diff options
author | 2015-04-30 21:59:28 +0000 | |
---|---|---|
committer | 2015-04-30 21:59:28 +0000 | |
commit | 997ed56d4ee43a73f74258b1aaab4caf09d69f0d (patch) | |
tree | db73111112994eb5b8b5e77a5e50489d11c74dc8 /doc/bugs/git-annex_fails_to_parse_external_remotes__39_____34__CHECKPRESENT-SUCCESS__34___response.mdwn | |
parent | cce090956ff72cc09e5a6ee47cd83c89964abbb1 (diff) |
Diffstat (limited to 'doc/bugs/git-annex_fails_to_parse_external_remotes__39_____34__CHECKPRESENT-SUCCESS__34___response.mdwn')
-rw-r--r-- | doc/bugs/git-annex_fails_to_parse_external_remotes__39_____34__CHECKPRESENT-SUCCESS__34___response.mdwn | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/doc/bugs/git-annex_fails_to_parse_external_remotes__39_____34__CHECKPRESENT-SUCCESS__34___response.mdwn b/doc/bugs/git-annex_fails_to_parse_external_remotes__39_____34__CHECKPRESENT-SUCCESS__34___response.mdwn new file mode 100644 index 000000000..3801668e0 --- /dev/null +++ b/doc/bugs/git-annex_fails_to_parse_external_remotes__39_____34__CHECKPRESENT-SUCCESS__34___response.mdwn @@ -0,0 +1,51 @@ +### Please describe the problem. + +During a git annex fsck --fast --from <someexternalremote>, any CHECKPRESENT-SUCCESS responses are considered failures: + + fsck file + failed to download file from remote + failed + (recording state in git...) + git-annex: fsck: 1 failed + +It doesn't appear that the external protocol is being violated in any way; it occurs both with my special external (https://git.encryptio.com/slime/blob/refs/heads/master:/misc/git-annex-remote-slime/main.go) and with the example external remote. Making these dump their IO to stderr shows they're behaving correctly, as far as I can tell. + +`git annex testremote` passes on these remotes too, so it's not catching the issue (though it probably should.) + +### What steps will reproduce the problem? + +With https://git-annex.branchable.com/special_remotes/external/example.sh/ installed as "git-annex-remote-externaltest", this script shows the issue: + +[[!format sh """ +#!/bin/sh +set -e + +[ -e "annex-test-dirs/repo/.git/annex/objects" ] && ( + find "annex-test-dirs/repo/.git/annex/objects" -type f -exec chmod 0644 {} \; + find "annex-test-dirs/repo/.git/annex/objects" -type d -exec chmod 0755 {} \; +) + +rm -rf annex-test-dirs +mkdir -p annex-test-dirs/{repo,data} + +cd annex-test-dirs/repo +git init +git annex init +MYPASSWORD=a MYLOGIN=b git annex initremote ext type=external encryption=none externaltype=externaltest directory="$(pwd)/../data" + +echo "data" > file +git annex add file +git commit -m message + +git annex copy --to ext + +# this works: +git annex fsck --from ext + +# but this incorrectly fails and marks the file "not present": +git annex fsck --fast --from ext +"""]] + +### What version of git-annex are you using? On what operating system? + +git-annex 5.20150420-gb0ebb23, from the linux standalone tarball, on linux. |