Trying to reproduce error inside 3rd party tool with 1.58 and macOS

This is not a bug report...yet...

...and may not be a bug with rclone...

With 1.58.0, the introduction of "clone" on macOS is giving me errors deep inside of a test of my backup tool dfb. It happens consistently and goes away with --local-no-clone.

Upload Error: 'link1.txt'. Error. Result: {'error': 'copy: failed to set metadata: failed to change permissions: chmod <path>dfb/tests/testdirs/symlinks/dst/link1.19700101000001.txt.c0c76a4c.partial: no such file or directory', 'input': {'_config': '{"NoCheckDest": true, "metadata": true}', 'dstFs': '<path>dfb/tests/testdirs/symlinks/dst', 'dstRemote': 'link1.19700101000001.txt', 'srcFs': 'srcalias:', 'srcRemote': 'link1.txt'}, 'path': 'operations/copyfile', 'status': 500}

However, I am trying really hard to reproduce this more simply and cannot seem to get the error outside of my test. Obviously this is on me but I was wondering if anyone else has seen these and could reproduce the issue?

I tried spinning up rcd servers, and test cases but it all works fine. I still need to dig more but I am hoping someone has seen this before?

Any ideas?

Obviously, once I manage to isolate it, if it is an rclone bug, I will create a proper report with the template.

TL/DR: Trying to reproduce bug but can't outside of complex non-rclone test. Any ideas?

Version:

rclone v1.68.0
- os/version: darwin 14.6.1 (64 bit)
- os/kernel: 23.6.0 (arm64)
- os/type: darwin
- os/arch: arm64 (ARMv8 compatible)
- go/version: go1.23.1
- go/linking: dynamic
- go/tags: cmount

Hi, just a wild guess.

Try --inplace

Hi @jwink3101! If it consistently goes away with --local-no-clone then it is probably related in some way to this PR which I authored.

This PR concerns only local-to-local transfers (aka "server-side copy") on macOS. (more info)

A few questions which may or may not be helpful to narrow this down:

  1. Are your source and dest on the same volume?
  2. Is your disk formatted as APFS?
  3. Are you using --metadata (-M)?
  4. Does --inplace change anything?
  5. Does your user have limited permissions to the dest?

Based on the error, it looks like it is not finding a .partial file that it expects to be there, but I'm not exactly sure why that would be. Is it possible that you have a competing process that is deleting it, or something like that?

Thanks @asdffdsa and @nielash for the comments. I found the issue and will make a new post.

But just so you know I appreciate and drove into your questions (which is how I figured it out):

I want to be clear here: I am not looking to fix the issue (yet). I am looking to isolate and reproduce. It's a problem in my code test that is causing it but I can't figure out how to make it happen outside.

Note that all of these changes to the test

--local-no-clone

No issues (as per the original test)

? --inplace

Still fails

Yes

Originally on an HFS+ ram-disk mount but also has error on the system APFS drive

Nope

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