Running git-annex upgrade von a v5 repo fails:
$ git-annex upgrade upgrade (v5 to v6...) (scanning for unlocked files...) (recording state in git...)
git status will show some files to be modified, since content availability has changed and git-annex was unable to update the index. This is only a cosmetic problem affecting git status; git add, git commit, etc won't be affected. To fix the git status display, you can run: git update-index -q --refresh (recording state in git...)
git status will show some files to be modified, since content availability has changed and git-annex was unable to update the index. This is only a cosmetic problem affecting git status; git add, git commit, etc won't be affected. To fix the git status display, you can run: git update-index -q --refresh
git-annex: user error (git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","status","--porcelain"] exited -9) failed (recording state in git...)
git status will show some files to be modified, since content availability has changed and git-annex was unable to update the index. This is only a cosmetic problem affecting git status; git add, git commit, etc won't be affected. To fix the git status display, you can run: git update-index -q --refresh
git-annex: upgrade: 1 failed
I have tried to run
git update-index -q --refresh
in the working tree. This produced no output and the problem above persists.
Also
git-annex repair
did return without output (after a few hours) and the problem above persists.
Version info: apt policy git-annex git-annex: Installed: 7.20190129-2~bpo9+1 Candidate: 7.20190129-2~bpo9+1 Version table: *** 7.20190129-2~bpo9+1 100 100 http://ftp.debian.org/debian stretch-backports/main amd64 Packages 100 /var/lib/dpkg/status 6.20170101-1+deb9u2 990 990 http://ftp.de.debian.org/debian stretch/main amd64 Packages 6.20170101-1+deb9u1 990 990 http://security.debian.org stretch/updates/main amd64 Packages
Would be happy if anybody could share some insight on how to get that repo to v7.
Regards, Felix
git status exiting with -9 means it died of SIGKILL. The only thing I can think of that could have killed it is the OOM killer.
Based on your apt config, I guess git was probably older than version 2.23, so it would have the ?bug that makes git status use a lot of memory.
It appears that the v5 repository was a direct mode repository.
What I suggest you do to recover is, upgrade git to 2.23, and re-run git-annex upgrade. It should pick up where it left off.
I reproduced the problem using git 2.1.4. The error message was slightly better:
And with the newer git, resuming the failed upgrade did succeed:
It doesn't seem practical to get around the old git's OOM problem. I think that the best thing to do is to not allow direct mode upgrade to v7 until git has been upgraded.
The minimum git version is 2.22. Unfortunately, Debian stable shipped 2.20. So direct mode users there who upgrade git-annex will need to also upgrade git in order for git-annex to convert their repo -- and since the next git-annex release drops support for direct mode, they'll have to upgrade git (or downgrade git-annex) in order to use git-annex in their repo at all.
You are right, git is at version 2.11.0-3+deb9u4 on this machine. OOM killer might be, the machine has 2GB RAM. During the upgrade I observed the memory usage increasing steadily but at some point decreasing again.
Unfortunately I've nuked the repo in the meantime, so I cannot try your suggestion of retrying after upgrading git. Also it looks like I need to go from stretch to testing to get a git >= 2.22. Which will probably not happen too soon.
Thanks, Felix