Can received renames avoid the intermediate temporary filename? Synology Cloud Sync re-uploads files

I’m running Syncthing v2.1.7 between two Synology NAS devices. On the receiving NAS, a DS923+, Synology Cloud Sync forwards changes to Sync.com through WebDAV.

A rename received through Syncthing causes Cloud Sync to delete the existing cloud file and upload its contents again. This is costly for large videos.

Using one disposable 102 MB file, we established:

  • A direct rename on the receiving NAS, using File Station or Terminal, produces “Rename remote file” in Cloud Sync.

  • A Syncthing-delivered rename produces “Delete remote file” followed by “Upload.”

  • The local inode stayed unchanged across the Syncthing rename.

  • Two rapid Terminal renames through an intermediate filename reproduce the failure without Syncthing performing the operation.

  • Both an ordinary intermediate filename and a .syncthing.…tmp filename trigger it.

  • Allowing temporary files in Cloud Sync’s filters did not fix it.

  • Pausing Cloud Sync during the Syncthing rename and resuming afterward did not fix it.

The v2.1.7 source appears to move the existing file to a temporary name before moving it to the final name.

Is there a supported way to apply a recognized rename directly to its final filename, or would that require a code change? Is the intermediate step necessary even when file versioning is disabled and the destination does not exist?

I understand this may be a Cloud Sync limitation. I’m asking whether Syncthing offers a compatible rename path or whether there is an existing discussion about this interaction.

Receiving NAS: DS923+, DSM 7.4.1-90080 Update 1 Cloud Sync: 2.7.3-2721 Syncthing: v2.1.7

Thank you.

This is one of the limitations of syncthing.

Basically there is no rename detection. Syncthing sees it as one file is deleted and another file is added.

In some cases Syncthing doesn’t require a retransfer because in certain circumstances it can copy from the deleted file before it’s deleted. In other cases the file (or parts of the file) are retransmitted.

either way syncthing never “renames” a file due to a change on a remote node.