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

This commit is contained in:
Joey Hess 2014-03-15 11:58:31 -04:00
commit 0760086f27
5 changed files with 140 additions and 10 deletions

View file

@ -0,0 +1,35 @@
### Please describe the problem.
I ran forget to clean up dead repos in my map, now map won't run.
### What steps will reproduce the problem?
$ git annex forget --drop-dead --force
....
$ git annex map
### What version of git-annex are you using? On what operating system?
(xubuntu)
$ git annex version
git-annex version: 5.20140306-g6e2e021
build flags: Assistant Webapp Pairing Testsuite S3 WebDAV Inotify DBus XMPP Feeds Quvi TDFA CryptoHash
key/value backends: SHA256E SHA1E SHA512E SHA224E SHA384E SKEIN256E SKEIN512E SHA256 SHA1 SHA512 SHA224 SHA384 SKEIN256 SKEIN512 WORM URL
remote types: git gcrypt S3 bup directory rsync web webdav tahoe glacier hook external
local repository version: 5
supported repository version: 5
upgrade supported from repository versions: 0 1 2 4
### Please provide any additional information below.
[[!format sh """
$ git annex map --debug
map /media/archive/annex ok
[2014-03-15 09:17:33 CDT] read: git ["config","--null","--list"]
[2014-03-15 09:17:33 CDT] read: git ["config","--null","--list"]
[2014-03-15 09:17:33 CDT] read: git ["config","--null","--list"]
git-annex: user error (git ["config","--null","--list"] exited 126)
failed
git-annex: map: 1 failed
"""]]

View file

@ -0,0 +1,10 @@
[[!comment format=mdwn
username="http://joeyh.name/"
ip="209.250.56.154"
subject="comment 1"
date="2014-03-15T15:53:17Z"
content="""
This is a bit tricky because I'm not sure which repository the map is failing on. Probably the one that comes after /media/archive/annex in the `git remote list` output.
If you go to each of the remotes and run `git config --null --list`, does it exit nonzero in any of them?
"""]]

View file

@ -0,0 +1,84 @@
### Please describe the problem.
#### git annex unused fails with the message:
...
86731 SHA256E-s13243--a6c5fe9710975e0b0ca01ec0b7eca6068a01b1b1c06adbd8ad7921e26d3b076d.h
86732 SHA256E-s12872--f50b73d313a116ea21649d684f601840dbc8ed3c264165dd77fa5d54a1c57464.c
86733 SHA256E-s6557264--6b502d56378b9919fd3c54c3bb2dc2906a326be8e9d477a8f3518419929f4706.dll
86734 SHA256E-s141--c6227fe715dab2b4447b6e43af2b170ac66d82043aa81a14013c56be922e11db.out
86735 SHA256E-s6564--ec4bcd833d071fff7d8cc81b908558acdeae2c9ba62f7d65b584effe6b36a8c6.c
git-annex: /bluepool/data/.git/annex/unused32594.tmp: commitBuffer: invalid argument (invalid character)
failed
git-annex: unused: 1 failed
#### A subsequent git annex dropunused does not work (there are 86735 files unused). A simple:
"git annex dropunused 1-10" produces:
git-annex: 1 not valid (run git annex unused for list)
#### It seems that the list of unused files was not saved (committed)
### What steps will reproduce the problem?
I suspect it can be reproduced by having files with non-english characters.
This should be the sequence of commands to reproduce if one knew the invalid character:
git init .
git annex init .
touch "Invalid character in file name"
git annex add "Invalid character in file name"
git commit
git rm "Invalid character in file name"
git commit
git unused
However, I usually have "git annex watch" running so this might also have an influence on how (maybe not-escaped) filenames are added.
### What version of git-annex are you using? On what operating system?
git annex standalone:
git-annex version: 5.20140306-g6e2e021
build flags: Assistant Webapp Pairing Testsuite S3 WebDAV Inotify DBus XMPP Feeds Quvi TDFA CryptoHash
key/value backends: SHA256E SHA1E SHA512E SHA224E SHA384E SKEIN256E SKEIN512E SHA256 SHA1 SHA512 SHA224 SHA384 SKEIN256 SKEIN512 WORM URL
remote types: git gcrypt S3 bup directory rsync web webdav tahoe glacier hook external
local repository version: 5
supported repository version: 5
upgrade supported from repository versions: 0 1 2 4
Ubuntu Raring: Linux i3 3.11.4-031104-generic
### Please provide any additional information below.
I guess I could provide the full output of git annex unused but I would rather not put it into this bug report for privacy reasons.
[[!format sh """
# If you can, paste a complete transcript of the problem occurring here.
# If the problem is with the git-annex assistant, paste in .git/annex/daemon.log
# End of transcript or log.
"""]]

View file

@ -3,14 +3,15 @@ the last release unexpectedly fixed XMPP SIGILL on some OSX machines.
Apparently when I rebuilt all the libraries recently, it somehow fixed that
[[old_unsolved_bug|bugs/Share_with_friends_crash_in_osx]].
RichiH suggested "wrt balloning memory on repair: can you read in broken
[RichiH](http://richardhartmann.de/) suggested "wrt ballooning memory on
repair: can you read in broken
stuff and simply stop reading once you reach a certain threshold, then
start repairing, re-run fsck, etc?" .. I had considered that but was
not sure it would work. I think I've gotten it to work.
Now working on a design for using a [[design/caching_database]]
for some parts of git-annex. My initial benchmarks using sqlite
for some parts of git-annex. My initial benchmarks using SQLite
indicate it would slow down associated file lookups by nearly an order of
magnitude compared with the current ".map files" implementation.
(But would scale better in edge cases). OTOH, using a sqlite
(But would scale better in edge cases). OTOH, using a SQLite
database to index metadata for use in views looks very promising.

View file

@ -7,14 +7,14 @@ Not sure I'm ready to dive into that yet, so instead spent the rest of the
day working on small bugfixes and improvemnts. Only two significant ones..
Made the webapp use a constant time string comparison (from `securemem`)
to check its auth token is valid. Could avoid a potential timing attack to
guess the auth token, although that is theoretical. Just best practice to
do this.
to check if its auth token is valid. This could help avoid a potential
timing attack to guess the auth token, although that is theoretical.
Just best practice to do this.
Seems that openssh 6.5p1 had another hidden surprise (in addition to
its now-fixed bug in handing hostnames in `.ssh/config`) -- it broke
the method git-annex was using for stopping a cached ssh connection,
which led to some timeouts for failing DNS lookups. If you see git-annex
seeming to stall for a few seconds at startup/shutdown, that's maybe why
(--debug will tell for sure). Seem to have found a workaround that avoids
the problem.
which led to some timeouts for failing DNS lookups. If git-annex seems
to stall for a few seconds at startup/shutdown, that may be why
(--debug will say for sure). I seem to have found a workaround that
avoids this problem.