comments
This commit is contained in:
parent
8307e0f63f
commit
4a1030d51d
2 changed files with 55 additions and 0 deletions
|
@ -0,0 +1,37 @@
|
||||||
|
[[!comment format=mdwn
|
||||||
|
username="joey"
|
||||||
|
subject="""comment 1"""
|
||||||
|
date="2022-09-16T17:10:24Z"
|
||||||
|
content="""
|
||||||
|
"file content has changed" is a message from the directory special remote
|
||||||
|
when it sees that a file in the directory has a different mtime,size,inode
|
||||||
|
tuple (content identifier) than the one that was recorded when importing
|
||||||
|
the tree.
|
||||||
|
|
||||||
|
Maybe that has something to do with the duplicate files, since they would
|
||||||
|
have different inodes. Except, it does try to support that; it can keep
|
||||||
|
track of multiple content identifiers for a key, and when there are
|
||||||
|
duplicate files, that works in my testing.
|
||||||
|
|
||||||
|
I notice that, if I have a directory special remote that was initially
|
||||||
|
set up with ignoreinodes=no, and I've imported a tree that way from it,
|
||||||
|
I can cause what looks like this problem:
|
||||||
|
|
||||||
|
joey@darkstar:~/tmp/bench/x>git-annex enableremote t directory=../x ignoreinodes=yes
|
||||||
|
enableremote t ok
|
||||||
|
(recording state in git...)
|
||||||
|
joey@darkstar:~/tmp/bench/x>git-annex get 3 --from t
|
||||||
|
get 3 (from t...)
|
||||||
|
file content has changed
|
||||||
|
|
||||||
|
Which seems like a bug that it allows changing it, but I think that the idea was
|
||||||
|
that, after changing ignoreinores, the user would re-run git-annex import,
|
||||||
|
which would re-import all the files since the content identifier has
|
||||||
|
changed. Still, I think that
|
||||||
|
[[!commit 3e2f1f73cbc5fc10475745b3c3133267bd1850a7]] didn't consider that
|
||||||
|
it could cause a get to fail.
|
||||||
|
|
||||||
|
I know you have recently upgraded from a version that defaulted
|
||||||
|
to ignoring inodes. Maybe you only need to re-run `git-annex import` from the
|
||||||
|
directory remote to fix the problem?
|
||||||
|
"""]]
|
|
@ -0,0 +1,18 @@
|
||||||
|
[[!comment format=mdwn
|
||||||
|
username="joey"
|
||||||
|
subject="""comment 2"""
|
||||||
|
date="2022-09-16T17:32:29Z"
|
||||||
|
content="""
|
||||||
|
If I was on the wrong track with my first comment, it would be helpful
|
||||||
|
to take a look at the content identifier that is recorded for
|
||||||
|
the key, by running:
|
||||||
|
|
||||||
|
git show git-annex:$(git-annex examinekey SHA256E-s55936559--0d418e4bb62cfc7ef5b053f8b622dd72794781a49931abc41bb9499acaf51b09.mp4 --format='${hashdirlower}${key}.log.cid')
|
||||||
|
|
||||||
|
The part after the UUID in the output is the content identifier(s). If more
|
||||||
|
than one, they are separated by colons. The format of a content identifier
|
||||||
|
is "inode size mtime", and the inode will be 0 if it was generated with
|
||||||
|
ignoreinodes=yes. So you could then compare the content identifiers
|
||||||
|
with the stat of the files in the directory special remote and see if
|
||||||
|
something has actually changed.
|
||||||
|
"""]]
|
Loading…
Add table
Reference in a new issue