-
-
Notifications
You must be signed in to change notification settings - Fork 749
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
borg2: --files-cache=ctime,inode,size (windows) #7193
Comments
Usage of ctime could be a bug, needs checking. |
@RayyanAnsari btw, the skipped test is rather special, but the problem on windows is likely much worse: as borg by default uses ctime (== creation time on windows), the files cache would not detect modified file as modified if they have still same size and same inode (for the current thus, i guess any backup except the first one might miss data (in previously existing, but updated files) on windows. guess we must use mtime instead of ctime on windows by default or do we have any other options? would it even make sense to reject |
Interesting that there is also a changetime. Guess without that using |
note to self: check python/cpython#102149 and its future implications |
@RayyanAnsari interesting. but they noticed they can't just change the semantics of ctime even if that would be prettier / more consistent in the end. that's what one gets if one does it wrong in the beginning... |
commit description:
python 3.14 seems quite a while away... |
It also depends on the filesystem. NTFS can do it, other filesystems? Would be cool if we could implement that in a non-messy way (at just one place, e.g. in a own |
Related: I just changed the files cache, so it stores both ctime and mtime. |
borg usually defaults to
--files-cache=ctime,inode,size
.on linux, this is the best way to determine a file has not changed since we cached information about it into the files cache. this is because ctime is the "inode change time" and is only under kernel control, so nothing can be "faked" there by userspace (like rolling back the time to hide a change or so).
on windows, ctime attribute is the file creation time, does not change and is thus pretty useless for this purpose.
because of that,
test_file_status_cs_cache_mode
is currently skipped on windows, but this can't be the final solution.borg rather should use
--files-cache=mtime,size
on windows (not sure about inode).The text was updated successfully, but these errors were encountered: