Server side copy, diferent logs; windows vs linux

What is the problem you are having with rclone?

for a server side copy, in the debug log

  • on windows, 269.394 MiByte/s
  • on linux, 0 Byte/s,

What is your rclone version (output from rclone version)

v1.56.0:
* win10 64bit
* termux on android phone
* ubuntu on raspberry pi4

Which cloud storage system are you using? (eg Google Drive)

aws s3

The command you were trying to run (eg rclone copy /tmp remote:tmp)

rclone copy aws:thesourcefolder aws:thedestfolder -vv --progress

The rclone config contents with secrets removed.

[aws]
type = s3
provider = AWS
access_key_id = 
secret_access_key = 
region = us-east-1
storage_class = STANDARD

A log from the command with the -vv flag

windows log

2021/09/07 13:29:22 DEBUG : Setting --config "C:\\data\\rclone\\scripts\\aws.conf" from environment variable RCLONE_CONFIG="C:\\data\\rclone\\scripts\\aws.conf"
2021/09/07 13:29:22 DEBUG : rclone: Version "v1.56.0" starting with parameters ["c:\\data\\rclone\\scripts\\rclone.exe" "copy" "aws:thesourcefolder" "aws:thedestfolder" "-vv" "--progress"]
2021/09/07 13:29:22 DEBUG : Creating backend with remote "aws:thesourcefolder"
2021/09/07 13:29:22 DEBUG : Using config file from "C:\\data\\rclone\\scripts\\aws.conf"
2021/09/07 13:29:22 DEBUG : Creating backend with remote "aws:thedestfolder"
2021-09-07 13:29:22 DEBUG : S3 bucket thedestfolder: Waiting for checks to finish
2021-09-07 13:29:22 DEBUG : S3 bucket thedestfolder: Waiting for transfers to finish
2021-09-07 13:31:57 DEBUG : w10.21h1.iso: md5 = 9f1b5246902a6f1a12b9a03b97c732a8 OK
2021-09-07 13:31:57 INFO  : w10.21h1.iso: Copied (server-side copy)
Transferred:        4.243Gi / 4.243 GiByte, 100%, 269.394 MiByte/s, ETA 0s
Transferred:            1 / 1, 100%
Elapsed time:      2m35.2s

linux log, same output for termux on android and ubuntu on pi4

~ $ rclone copy aws:thesourcefolder aws:thedestfolder -vv --progress
2021/09/07 17:35:00 DEBUG : rclone: Version "1.56.0-termux" starting with parameters ["rclone" "copy" "aws:thesourcefolder" "aws:thedestfolder" "-vv" "--progress"]
2021/09/07 17:35:00 DEBUG : Creating backend with remote "aws:thesourcefolder"
2021/09/07 17:35:00 DEBUG : Using config file from "/data/data/com.termux/files/home/.config/rclone/rclone.conf"
2021/09/07 17:35:00 DEBUG : Creating backend with remote "aws:thedestfolder"
2021-09-07 17:35:00 DEBUG : S3 bucket thedestfolder: Waiting for checks to finish
2021-09-07 17:35:00 DEBUG : S3 bucket thedestfolder: Waiting for transfers to finish
2021-09-07 17:37:18 DEBUG : w10.21h1.iso: md5 = 9f1b5246902a6f1a12b9a03b97c732a8 OK
2021-09-07 17:37:18 INFO  : w10.21h1.iso: Copied (server-side copy)
Transferred:        4.243Gi / 4.243 GiByte, 100%, 0 Byte/s, ETA -
Transferred:            1 / 1, 100%
Elapsed time:      2m18.1s

Hi Jojo,

I suspect that it is a coincidence.

I havent’t checked/tested (yet), but I guess rclone shows 0 Bytes/s as a replacement for indefinite, when the time is (almost) 0 seconds. It is just a simple hack we programmers often use to avoid fatal errors from division by zero.

It could be that the times ticks are longer on linux, or just pure coincidence.

hi,

sure, did my first /0 ERROR in 1978 on my trs-80.

image

if this was an intentional hack, then the behavior should be consistent.

been a while since i noticed it, so i will do more testing to narrow it down and post my results...

Sweet memories, it’s been a while since I soldered my own PC :joy:

Image source: https://nascom.wordpress.com/nascom/nascom-3-2/

This seems to be the average calculation used:

It is the same across platforms and has the 0.0 in line 319.

very nice, z80, msbasic, light pen but could it zork?

tho i am not familiar with go syntax, rclone source code style and this is just a code snippet.
i am not seeing that
"It is just a simple hack we programmers often use to avoid fatal errors from division by zero."

line 319 is avg := 0.0
as i see it, with avg, no chance of a /0

  1. avg is never used a divisor in a divide operation
  2. the only other time avg is used is in an addition operation a.speed = (avg +

in fact, the only chance of /0, that i see is line 326.
period could be zero and there is no check on that.
that is not the case with line 320, where there is an explicit check to prevent a /0
if elapsed > 0

and even if i misinterpreted the source code and in fact, there is that /0 hack,
none of that explains the difference in reported speed in the test results from up above.

imho, this could be an issue with the display output, as there is another difference.
and as this is server side, no data is transfered, so the speed should be zero.

on windows 	ETA 0s
on linux	ETA -

i had planed to do some more testing, but i was a bad boy this morning.
so right now, i am in a time out, forced to watch the first episode of crapple's foundation series.
oh the horror of it all. if this is the end of me and i never post again in the forum, let this be a warning to all my beloved fellow rcloners.

image

:grinning_face_with_smiling_eyes:

If the copy completes within 1 second then elapsed becomes zero:

and this code makes sure rclone doesn't divide by elapsed (if zero), thus leaving avg=0:

well, that was fun...

hack or no hack, none of it addresses my issue.
that the output should be the same.

windows linux
269.394 MiByte/s ETA 0s
0 Byte/s ETA -

OK, let’s be more systematic and collect some extra data.

What do you see if you execute this command on Windows and termux on android:

rclone copy aws:thesourcefolder aws:thedestfolder --ignore-times --stats 30s -vv

Does your WSL/Ubuntu produce the same output as the android and pi4?
(I vaguely remember you have it. If so then I have a possibility to confirm and debug)

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.