2018-10-16 15:41:12 +00:00
|
|
|
Touching a locked file in a v6 repository follows the symlink and touches
|
|
|
|
the object file. This makes inAnnex's sameInodeCache fail because the keys
|
|
|
|
database has a different mtime cached, and so `git annex unlock` doesn't
|
|
|
|
populate the file with content, but with a pointer file.
|
|
|
|
|
|
|
|
Also, `git annex` fsck complains no copies exist even though the symlink is
|
|
|
|
pointing at a copy.
|
|
|
|
|
|
|
|
This seems another reason to not check sameInodeCache for locked content,
|
|
|
|
along with
|
|
|
|
<http://git-annex.branchable.com/bugs/inAnnex_check_failed_repeatedly_for_present_content_v6/>
|
|
|
|
--[[Joey]]
|
|
|
|
|
|
|
|
Note that after initial `git annex add` into a v6 repository, the keys
|
|
|
|
database does not have an inode cached. But after an unlock followed by a
|
|
|
|
lock, it does. So, here's a complete reproducer:
|
|
|
|
|
|
|
|
git annex init --version=6
|
|
|
|
date > file
|
|
|
|
git annex add file
|
|
|
|
git annex unlock file
|
|
|
|
git annex lock file
|
|
|
|
touch file
|
|
|
|
git annex unlock file
|
|
|
|
cat file
|
|
|
|
/annex/objects/...
|
2018-10-16 17:30:04 +00:00
|
|
|
|
|
|
|
> now [[fixed|done]] --[[Joey]]
|