Please describe the problem.
fsck says ok while file is not present in the remote
The remote looks like this:
apple-slicer gcrypt::rsync://apple-slicer/encr/gits/important_docs
> git annex fsck --from apple-slicer Taxes/2018-19/Joint_T5.pdf
fsck Taxes/2018-19/Joint_T5.pdf ok
(recording state in git...)
This portion in the log does not look good
[2023-10-20 18:06:23.514382] (Utility.Process) process [63613] done ExitSuccess
[2023-10-20 18:06:23.515339] (Utility.Process) process [63621] read: rsync ["apple-slicer:/encr/gits/important_docs/annex/objects/093/d6e/GPGHMACSHA1--47089ada3aaae768ea5e1d2ccc9284ac83a1d80f/GPGHMACSHA1--47089ada3aaae768ea5e1d2ccc9284ac83a1d80f"]
[2023-10-20 18:06:24.344801] (Utility.Process) process [63621] done ExitFailure 23
[2023-10-20 18:06:24.346693] (Utility.Process) process [63630] read: rsync ["apple-slicer:/encr/gits/important_docs/annex/objects/f9/V3/GPGHMACSHA1--47089ada3aaae768ea5e1d2ccc9284ac83a1d80f/GPGHMACSHA1--47089ada3aaae768ea5e1d2ccc9284ac83a1d80f"]
[2023-10-20 18:06:25.148852] (Utility.Process) process [63630] done ExitFailure 23
ok
[2023-10-20 18:06:25.152624] (Utility.Process) process [63599] done ExitSuccess
Full log: https://privatebin.net/?c70841788ba0b6c1#9aCknSWqLjzQZd3n1hJUCK4GFEcoPFd1cZrfnWWoF5zm
What steps will reproduce the problem?
- Create a special remote of type
gcrypt::rsync
git annex fsck --from {special remote} --debug
What version of git-annex are you using? On what operating system?
macOS
git-annex version: 10.20230626
Please provide any additional information below.
# If you can, paste a complete transcript of the problem occurring here.
# If the problem is with the git-annex assistant, paste in .git/annex/daemon.log
# End of transcript or log.
I don't see a bug here. If the file is not present there and was not expected to be present there, and there are enough copies in other places, then fsck has nothing to complain about.
Well
fsck --from
does check the consistency of what's in the remote. That entails verifying that the remote contains the data that git-annex thinks it contains. But it also means verifying that the remote does not contain any data that git-annex didn't know it contains.Checking the file is not present on the remote is part of the latter.
If you wanted to only verify that files git-annex thinks are on the remote are present there, you could use eg
git-annex fsck --from theremote --in theremote
That makes perfect sense. Thank you so much!
And thanks for some fantastic software