diff options
author | Joey Hess <joey@kitenet.net> | 2013-11-06 12:30:05 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2013-11-06 12:30:05 -0400 |
commit | 6f6ab73e4954a5e1f44b18103230d372080faacc (patch) | |
tree | 6c7af4e8aa3c01c24e3a66aff01354e83749ba22 /doc/bugs | |
parent | 262a884d17ce86bbe3fbc54537b591ffba152c63 (diff) | |
parent | d793940703fd97cd9c45071ffde39c536289a513 (diff) |
Merge branch 'master' of ssh://git-annex.branchable.com
Diffstat (limited to 'doc/bugs')
2 files changed, 101 insertions, 6 deletions
diff --git a/doc/bugs/Freshly_initialized_repo_has_staged_change___34__deleted:_uuid.log__34__/comment_5_c699034c8e02b2354516414d0ab73aab._comment b/doc/bugs/Freshly_initialized_repo_has_staged_change___34__deleted:_uuid.log__34__/comment_5_c699034c8e02b2354516414d0ab73aab._comment new file mode 100644 index 000000000..e8a5f8cdd --- /dev/null +++ b/doc/bugs/Freshly_initialized_repo_has_staged_change___34__deleted:_uuid.log__34__/comment_5_c699034c8e02b2354516414d0ab73aab._comment @@ -0,0 +1,53 @@ +[[!comment format=mdwn + username="http://joeyh.name/" + ip="209.250.56.47" + subject="comment 5" + date="2013-11-06T16:27:49Z" + content=""" +Running the prebuilt tarball build of git-annex, the bug does not occur. + +However, if I remove the git shipped with the prebuilt tarball, so it uses the system git, I do see the bug. So, it's apparently git version dependent. + +Also, I was able to reproduce it in a amd64 chroot. My other chroot was i386. Somehow architecture specific bug? + +--- + +Instrumenting all calls to git to be logged with the full environment and command, I found this: + +<pre> +GIT_INDEX_FILE='/home/foo/annex/.git/annex/index' +--git-dir=/home/foo/annex/.git --work-tree=/home/foo/annex commit --quiet --allow-empty -m created repository +</pre> + +This certianly looks like the index file setting for the git-annex branch is somehow leaking out past the branch commit operations. It continued setting that while setting up `gc.auto`; the next call to git after that stopped setting the index file. + +The only way I can see offhand this could possibly happen is due to an exception. It may be that on ubuntu an exception is thrown by code that runs a git command with the index file set, for whatever reason, and this causes the code that normally resets it back to not run. + +---- + +Ok, found it! + +<pre> +\"withIndex entered\" + +*** Please tell me who you are. + +Run + + git config --global user.email \"you@example.com\" + git config --global user.name \"Your Name\" + +to set your account's default identity. +Omit --global to set the identity only in this repository. + +fatal: unable to auto-detect email address (got 'foo@darkstar.(none)') +\"withIndex entered\" +\"withIndex cleaned up\" +</pre> + +Note lack of clean up after the first withIndex call. Thus leaving the environment passed to git polluted for further calls. + +This also explains why it's only happening on some systems, or with some versions of git. git's got all kinds of complexity around its username and email handling code. + +I have fixed this in git. +"""]] diff --git a/doc/bugs/remote_not_showing_up_in_webapp.mdwn b/doc/bugs/remote_not_showing_up_in_webapp.mdwn index abece6273..f8b4da7b1 100644 --- a/doc/bugs/remote_not_showing_up_in_webapp.mdwn +++ b/doc/bugs/remote_not_showing_up_in_webapp.mdwn @@ -2,11 +2,11 @@ This is a followup on [[bugs/internal_server_error:_unknown_UUID_on_webapp]]. In that issue, webapps previous to 20130929 would crash with `internal server error: unknown UUID`. This was fixed at that date, but some problems remain, namely that the remote that is recognized on the commandline doesn't show up in the webapp. -`markov` is able to push to `marcos`, but not the reverse because `markov` is hidden behind a NAT. `git annex sync` seems to do the right thing accordingly on both ends. +`markov` is able to push to `marcos`, but not the reverse because `markov` is hidden behind a NAT. `git annex sync` seems to do the right thing accordingly on both ends (which is: `marcos` doesn't try to push to `markov` but `markov` pushes to `marcos`). ### What steps will reproduce the problem? -See [[bugs/internal_server_error:_unknown_UUID_on_webapp]]. I didn't do any further changes other than upgrade git-annex on both ends. +See [[bugs/internal_server_error:_unknown_UUID_on_webapp]]. I didn't do any further changes other than upgrade `git-annex` on both ends. ### What version of git-annex are you using? On what operating system? @@ -16,9 +16,11 @@ See [[bugs/internal_server_error:_unknown_UUID_on_webapp]]. I didn't do any furt ### Please provide any additional information below. +#### On `marcos` + +Here's the output of `git annex status` on `marcos`: + [[!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 anarcat@marcos:books$ git annex status repository mode: direct trusted repositories: 0 @@ -39,8 +41,48 @@ backend usage: # End of transcript or log. """]] -Here's a screenshot of the webapp: +Here's a screenshot of the idle webapp on marcos: <img src="http://i.imgur.com/3HFgj3w.png" /> -You can clearly see that the webapp doesn't see the `markov` remote. When `markov` transfers stuff, `marcos` sees the transfers happening, but marks it as going to the `unknown` remote. Clicking on that link is what was previously triggering [[bugs/internal_server_error:_unknown_UUID_on_webapp]] but now yields a "Unknown remote" error (which I can't reproduce anymore because the repos are synced - I can reproduce by retransfering some files if necessary). --[[anarcat]] +You can clearly see that the webapp doesn't see the `markov` remote. + +When `markov` transfers stuff, `marcos` sees the transfers happening, but marks it as going to the `unknown` remote: + +<img src="http://i.imgur.com/YOu9GbA.png" /> + +Clicking on that link is what was previously triggering [[bugs/internal_server_error:_unknown_UUID_on_webapp]] but now yields a "Unknown remote" error. + +<img src="http://i.imgur.com/y7JxULi.png" /> + +#### On `markov`: + +Here is a screenshot from `markov` that shows *it* knows about both repositories and seem to behave properly: + +<img src="http://i.imgur.com/fTMslVT.png" /> + +And here's the output of `git annex status` on markov: + +[[!format sh """ +anarcat@desktop008:books$ git annex status +repository mode: indirect +trusted repositories: 0 +semitrusted repositories: 3 + 00000000-0000-0000-0000-000000000001 -- web + a75cbbf7-e055-423e-b375-443e0552c9e2 -- origin (anarcat@marcos:/srv/books) + aa500f29-42d9-4777-ae02-4a2c3d47db44 -- here (anarcat@markov:~/books) +untrusted repositories: 0 +transfers in progress: + downloading Patrick K. O'Brien/Philip's Atlas of World History, Concise Edition (115)/Philip's Atlas of World History, Concise Edition - Patrick K. O'Brien.pdf from origin +available local disk space: 93.25 gigabytes (+1 megabyte reserved) +temporary directory size: 50.07 megabytes (clean up with git-annex unused) +local annex keys: 708 +local annex size: 3.81 gigabytes +known annex keys: 721 +known annex size: 3.92 gigabytes +bloom filter size: 16 mebibytes (0.1% full) +backend usage: + SHA256E: 1429 +"""]] + +Finally, note that you sometimes see `desktop008` above: it turns out I am running `git annex` from my workstation, which NFS-mounts the `/home` directory of `markov` into `/srv/musique`. --[[anarcat]] |