summaryrefslogtreecommitdiff
path: root/doc/bugs/git_annex_fsck_on_btrfs_devices.mdwn
blob: 7ed827b780f80725d506c652f7308dd82632d395 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
### Please describe the problem.
btrfs automatically validates checksums when data is read. If a checksum fails, instead of giving the corrupted file contents, the read will throw an I/O error. In result, it seems that git-annex fsck will not recognize the file as faulty, and will instead fail with a sha1sum parse error, without dropping the corresponding file as “bad”.

[[!format sh """
git annex fsck file
fsck file (checksum...)
sha1sum: .git/annex/objects/…: Input/output error
git-annex: sha1sum parse error
# End of transcript or log.
"""]]

### What version of git-annex are you using? On what operating system?
git-annex 5.20150508
linux 4.0.4

> [[fixed|done]]; IO errors are now detected and the file moved to bad/;
> the fsck also continues past that failure now, so if a disk has
> a lot of damanged files, it will find them all. --[[Joey]]