Sudden drop in upload speed to Google Drive

For the past few weeks my upload speed to Google Drive from my dedicated Ubuntu server at OVH has dropped from 13-20 MB/s to 400-500 Kbps. There have been no API bans and I’m using a dedicated client ID and secret. My upstream bandwidth is 500 Mbps.

I’ve tried to adjust my --transfers amount and --drive-chunk-size as well as bound the rclone move command to my system’s static IP address. I’ve also tried running rclone through a VPN proxy.

What I’ve found is that if I upload to google:tv/subfolder it runs painfully slow but when I run the move to google:temp I get a very good upload speed. I’ve tried the move and the copy command with the same results.

This is using 1.38 stable and the latest beta:

rclone v1.38-049-gd0b9baabβ

  • os/arch: linux/amd64
  • go version: go1.9.2

rclone move --transfers=10 --drive-chunk-size=16M --verbose --exclude-from /home/plex/plexscripts/rclonexcludelist --bind XXX.XXX.XXX.XXX --log-file=/home/plex/plexscripts/logs/tvupload.log “/home/plex/media/tv//Season 1” “google:tv//Season 1”

I don’t see any errors, I just get entries like this:

017/10/27 21:27:51 INFO : Google drive root ‘tv//Season 1’: Waiting for transfers to finish
2017/10/27 21:28:50 INFO :
Transferred: 27.085 MBytes (455.349 kBytes/s)
Errors: 0
Checks: 12
Transferred: 0
Elapsed time: 1m0.9s
Transferring:

I’m at a loss as what to try next.

Hmm, that is odd!

I can’t think of anything in rclone that would cause that. Lots of files etc would cause the initial upload to take longer to transfer the first byte, but after that it should make no difference.

It must be some drive thing, maybe that directory has been moved to a different server or been rate limited in some way?

Do you see rclone doing anything strange?

Well today I’m getting poor performance across the board after some initial uploads which performed well against the temp folder. I’ve opened a ticket with Google but they haven’t responded. It’s driving me bananas. I’m going to set up a VPS dedicated for downloads on another provider to see if it’s something to do with this server/provider.