Merge branch 'master' of ssh://git-annex.branchable.com

This commit is contained in:
Joey Hess 2021-05-24 16:31:58 -04:00
commit 125a28c58e
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38
10 changed files with 148 additions and 2 deletions

View file

@ -0,0 +1,8 @@
[[!comment format=mdwn
username="Atemu"
avatar="http://cdn.libravatar.org/avatar/d1f0f4275931c552403f4c6707bead7a"
subject="comment 7"
date="2021-05-22T17:02:07Z"
content="""
What could I do to get to the bottom of this? Is there a verbose logging feature for the assistant that could give more insight?
"""]]

View file

@ -0,0 +1,8 @@
[[!comment format=mdwn
username="Lukey"
avatar="http://cdn.libravatar.org/avatar/c7c08e2efd29c692cc017c4a4ca3406b"
subject="comment 8"
date="2021-05-22T17:19:19Z"
content="""
You could run the equivalent of `strace` for mac os and make it log every syscall of git-annex assistant and it's children. This would show which `git` action corrupts the repo and how.
"""]]

View file

@ -0,0 +1,8 @@
[[!comment format=mdwn
username="Atemu"
avatar="http://cdn.libravatar.org/avatar/d1f0f4275931c552403f4c6707bead7a"
subject="comment 9"
date="2021-05-22T17:31:01Z"
content="""
This also happens on Linux, so I'd rather use `strace` itself but I think it'd be extremely hard to spot anything useful in that and probably is not worth the performance cost.
"""]]

View file

@ -0,0 +1,12 @@
[[!comment format=mdwn
username="Atemu"
avatar="http://cdn.libravatar.org/avatar/d1f0f4275931c552403f4c6707bead7a"
subject="comment 4"
date="2021-05-22T09:55:31Z"
content="""
You are quite correct, the minimal test case works just as expected when the config is applied *before* running the daemon.
`delayadd` has been in my actual repo's config for many months now and has seen countless daemon restarts however, so that can't be my actual problem unfortunately.
Now that I have a working repo, I will try to break it like I did with my regular repo.
"""]]

View file

@ -0,0 +1,32 @@
[[!comment format=mdwn
username="Atemu"
avatar="http://cdn.libravatar.org/avatar/d1f0f4275931c552403f4c6707bead7a"
subject="comment 5"
date="2021-05-22T10:20:35Z"
content="""
I found the culprit: largefiles.
I use
```
* annex.largefiles=mimeencoding=binary
```
in my documents repo because I need to efficiently store lots of text and diff, merge etc. properly.
Here are the revised repro steps:
```
git init test
cd test
git annex init
git config annex.delayadd 5
echo '* annex.largefiles=mimeencoding=binary' > .gitattributes
git add .
git commit -m \"gitattributes: largefiles\"
git annex assistant
echo `date` > test
git log --patch
```
The date of the commit should be the date in the file +5s.
"""]]

View file

@ -0,0 +1,15 @@
[[!comment format=mdwn
username="Ilya_Shlyakhter"
avatar="http://cdn.libravatar.org/avatar/1647044369aa7747829c38b9dcc84df0"
subject="defining preferred content state"
date="2021-05-23T20:39:23Z"
content="""
Thanks @joeyh for working on this.
Is the following understanding of preferred content expressions accurate:
* the expression is a predicate on file paths, not on keys. Expressions that check the property of a key (e.g. numcopies) are evaluated for each file path on the key it uses.
* a given key is wanted in a repo if the preferred content expression is true for *any* file path which uses the key
Also, if the above if correct, is \"any file path which uses the key\" defined the same way as in [[git-annex-unused]]?
"""]]