I have set FileTimeTolerance to 0 and recently I discovered a strange behavior.
I use the "Mirror" variant with a database file. I have two files with 1 second difference in their modification date, but otherwise identical. When I try to sync, a message appears about these two files, saying "Cannot determine sync-direction: No change since last synchronization".
I have read this post: viewtopic.php?t=1183&sid=e6fd545dc346bd8f359392ae2df8222d
and while I understand Zenju's explanation and that FFS can't be sure which file is newer,
I'd still expect the program to just copy the file from the left to the right, since I have selected the "Mirror" variant.
Since FFS knows that the files differ, why does it matter which is newer, when I have chosen to always copy from left to right?
Mirroring bug (?) related to FileTimeTolerance
- Posts: 6
- Joined: 22 Aug 2023
- Posts: 6
- Joined: 22 Aug 2023
According to my settings, the direction of the sync should always be from left to right.
- Attachments
-
- screenshot.jpg (49.79 KiB) Viewed 985 times
-
- Posts: 2619
- Joined: 22 Aug 2012
Your problem may be self-inflicted.
> I have set FileTimeTolerance to 0 ...
The simplest way to "fix" your problem is to change it back to the default setting of 2 seconds, as apparently even required for FAT/FAT32 file systems.
The "Cannot determine sync-direction: No change since last synchronization" is probably the result of the since FFS version 13.x default use of the database. See e.g. here.
Disabling the use of the database will probably seemingly solve your user problem, but with your FileTimeTolerance set to 0 may result in repetitive unnecessary recopying.
But I agree with your more fundamental statement.
If FFS deems files to be different in any relevant aspect, in a Mirror (and Update) sync variant it should simply update the target-side file to match the source-side file.
> I have set FileTimeTolerance to 0 ...
The simplest way to "fix" your problem is to change it back to the default setting of 2 seconds, as apparently even required for FAT/FAT32 file systems.
The "Cannot determine sync-direction: No change since last synchronization" is probably the result of the since FFS version 13.x default use of the database. See e.g. here.
Disabling the use of the database will probably seemingly solve your user problem, but with your FileTimeTolerance set to 0 may result in repetitive unnecessary recopying.
But I agree with your more fundamental statement.
If FFS deems files to be different in any relevant aspect, in a Mirror (and Update) sync variant it should simply update the target-side file to match the source-side file.
-
- Posts: 2619
- Joined: 22 Aug 2012
Further to my last remark just above:
As per the earlier description by Zenju (the author of FFS), your "Cannot determine sync-direction: No change since last synchronization" conflict is apparently considered to be of the 2nd category.
As per the earlier description by Zenju (the author of FFS), your "Cannot determine sync-direction: No change since last synchronization" conflict is apparently considered to be of the 2nd category.
-
- Site Admin
- Posts: 7358
- Joined: 9 Dec 2007
I tend to agree with Plerry here. The reason you're seeing a 1 second file time difference is (most likely) because the underlying file system is lacking precision.Your problem may be self-inflicted.
> I have set FileTimeTolerance to 0 ... Plerry, 24 Mar 2024, 08:24
viewtopic.php?t=1183#p5178 was an interesting read from 11 years back. Meanwhile I come to a different conclusion and would apply file time tolerance also when comparing DB entries with the current state. Whether this makes sense is a different question(*), but it's what the user has requested. I've fixed this for the next version, which will get rid of "Cannot determine sync-direction: No change since last synchronization":
https://www.mediafire.com/file/qppuo2eureyj58y/FreeFileSync_13.5_%255BBeta%255D_Windows_Setup%25283%2529.exe
*) As long as there is FAT(32) there is no reason to have a file time tolerance other than "2". In the far future when FAT is finally gone, there will be a glorious moment when file time tolerance can finally be set to "0". However, probably not in this century anymore!