I am new to rclone and don't actually utilize the software at this time (another team member handles that aspect)
We presently utilize rclone to move data files to an s3 appliance from our fast storage. It is installed in a container and up until today was at version 1.50.2 (upgraded over time the last several years).
The issue I am having may seem trivial, but is a task I have been assigned.
I am attempting to write a python script that calculates the etag/md5 on the file to compare to the one generated when the file was migrated to the s3.
Reading through the code on github has helped me determine that it looks like it follows s3 'standard' with a filesize cutoff of 5GB. I seem to be able to calculate the etag/md5 correctly using 16MB chunksize until around 4.7ish GB and then it breaks down.
I saw this calculation - partSize = int((((size / maxUploadParts) >> 20) + 1) << 20) and attempted to implement it in my code, but am not getting correct results.
I see the chunker.go but I am a novice with go and haven't been able to interpret/understand it yet.
I've seen in the forum that people state that this chunk size is calculated dynamically, but no explanation as to how this is done (or I have missed the explanation thus far).
So, my question is how does rclone dynamically determine chunk size for files?
Any help here would be greatly appreciated as these files have originals on tape and I'd like to calculate this to determine if there has been corruption on of data on the s3 appliance before we migrate them to a new location (we have found instances of this randomly already).
Thank you all in advance for your time and help.