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

This commit is contained in:
Joey Hess 2013-11-02 22:26:05 -04:00
commit a2699b1b57
11 changed files with 192 additions and 24 deletions

View file

@ -1,12 +0,0 @@
[[!comment format=mdwn
username="https://www.google.com/accounts/o8/id?id=AItOawnZEanlyzay_QlEAL0CWpyZcRTyN7vay8U"
nickname="Carlo"
subject="comment 3"
date="2013-10-30T15:04:44Z"
content="""
The assistant autorecovered my work repo before I noticed, so it looks like I can't provide the necessary info. There were a bunch of files missing that got re-synced from my home PC.
For what it's worth, I noticed that on my phone, when cutting the internet connection while syncing, the assistant downloaded existing files into placeholder files, and then continued actually downloading files when they were around.
"""]]

View file

@ -1,12 +0,0 @@
[[!comment format=mdwn
username="https://www.google.com/accounts/o8/id?id=AItOawnZEanlyzay_QlEAL0CWpyZcRTyN7vay8U"
nickname="Carlo"
subject="comment 4"
date="2013-10-30T15:05:17Z"
content="""
The assistant autorecovered my work repo before I noticed, so it looks like I can't provide the necessary info. There were a bunch of files missing that got re-synced from my home PC.
For what it's worth, I noticed that on my phone, when cutting the internet connection while syncing, the assistant downloaded existing files into placeholder files, and then continued actually downloading files when the network connection was restored.
"""]]

View file

@ -0,0 +1,10 @@
[[!comment format=mdwn
username="http://joeyh.name/"
ip="209.250.56.47"
subject="comment 5"
date="2013-11-03T01:17:39Z"
content="""
I don't understand what you mean by \"The assistant autorecovered my work repo before I noticed\". What repo is the work repo, and how could the assistant \"autorecover\" it, and what did it do?
At this point, I am completely in the dark about whether you're reporting a problem, and what the problem is.
"""]]

View file

@ -0,0 +1,12 @@
[[!comment format=mdwn
username="https://www.google.com/accounts/o8/id?id=AItOawmNu4V5fvpLlBhaCUfXXOB0MI5NXwh8SkU"
nickname="Adam"
subject="comment 10"
date="2013-11-03T02:19:04Z"
content="""
Thanks, Joey. I didn't realize that there were two instances of the assistant running.
Forgive my ignorance, but if I disable the assistant running in the backup repo, will the other assistant still backup files to it?
Also, from a UI perspective, does the webapp currently not seem to support secondary internal drives, at least in a useful way?
"""]]

View file

@ -0,0 +1,25 @@
[[!comment format=mdwn
username="http://joeyh.name/"
ip="209.250.56.47"
subject="comment 9"
date="2013-11-03T01:52:56Z"
content="""
Ok, since we don't have NFS craziness, I'm going to put theories about it not noticing incoming syncs on hold. (I think I probably misunderstood [this comment](http://git-annex.branchable.com/bugs/Unnecessary_remote_transfers/#comment-39490c318620c141e7557b7bcba0e5c8) and anyway the assistant has some throttling so won't always immediately load config changes that have been synced to it if some other config changes were loaded a minute before.)
I think this behavior can probably be explained without resorting to any bugs, now that I have, I think, a full picture of the repository network:
<pre>
laptop <-> desktop <-> backup
| | |
v v v
transfer (cloud)
</pre>
Now when a file is added to desktop, it immediately copies it to backup, which is on the same machine, so that happens quite quickly. Then it starts sending it across the LAN to laptop.
Meanwhile, the assistant daemon running on backup wakes up, notices it's just received an object, and sees that this object is currently located on only desktop and backup, but not yet on laptop or transfer. Which means that it should send the object to transfer, from which it will eventually reach laptop.
The only ways I can think of to avoid such an unnecessary transfer would be a) for desktop could somehow tell backup that it's in the process of sending the file to laptop or b) for a map of current state of the network to be constructed and maintained and analyzed automatically, so it it could conclude backup does not need to send files to transfer if they're already present on desktop. There is some discussion about this in [[design/assistant/syncing]]. Hard problem in general I think, although slightly less hard in this specific case since desktop and backup know they're in the same machine.
But it should be easy to configure it so this doesn't happen. Just make backup not have the transfer repository configured as a remote (or just pause it syncing to there in the webapp). Or, don't run the assistant at all on backup (see `~/.config/git-annex/autostart`).
"""]]

View file

@ -0,0 +1,10 @@
[[!comment format=mdwn
username="http://joeyh.name/"
ip="209.250.56.47"
subject="comment 1"
date="2013-11-03T01:12:25Z"
content="""
This is apparently the same repository where [[all_this_went_on|bugs/Unnecessary_remote_transfers]].
I don't know if this is indicative of a problem. I see more zombies than I would normally expect, but I don't know if the number is growing, or shrinking, or staying the same. You should at least look at ps -f to see which of the multiple git-annex assistant daemons you have configured to run on this machine (not a usual configuration) is the parent of the zombies.
"""]]

View file

@ -0,0 +1,52 @@
[[!comment format=mdwn
username="https://www.google.com/accounts/o8/id?id=AItOawmNu4V5fvpLlBhaCUfXXOB0MI5NXwh8SkU"
nickname="Adam"
subject="comment 2"
date="2013-11-03T01:19:42Z"
content="""
Indeed. I've been looking forward to setting up git-annex assistant for a long time, waiting until I had more free time, and was finally pushed to do it when I had a weird problem with Dropbox. I'm not sure what I did wrong to make such a mess, haha.
I see \"5510 git-annex assistant\" and \"31565 git-annex webapp\"--does the \"webapp\" one count as an assistant process too?
[[!format sh \"\"\"$ ps -ef | gi git
UID PID PPID C STIME TTY TIME CMD
me 3404 31565 0 17:44 pts/2 00:00:04 [git-annex] <defunct>
me 5457 31565 0 17:59 pts/2 00:00:00 [git-annex] <defunct>
me 5510 1 0 17:59 ? 00:00:06 git-annex assistant
me 5522 5510 0 17:59 ? 00:00:00 git --git-dir=/home/me/annex/.git --work-tree=/home/me/annex cat-file --batch
me 5573 5510 0 17:59 ? 00:00:00 git --git-dir=/home/me/annex/.git --work-tree=/home/me/annex cat-file --batch
me 5679 5510 0 17:59 ? 00:00:00 git --git-dir=/home/me/annex/.git --work-tree=/home/me/annex check-attr -z --stdin annex.backend annex.numcopies --
me 5680 5510 0 17:59 ? 00:00:03 [git-annex] <defunct>
me 5710 5510 0 18:00 ? 00:00:00 [git-annex] <defunct>
me 5732 31565 0 18:00 pts/2 00:00:00 [git-annex] <defunct>
me 5752 31565 0 18:00 pts/2 00:00:00 [git-annex] <defunct>
me 5785 1 0 18:01 ? 00:00:00 ssh: .git/annex/ssh/example.net [mux]
me 5905 5510 0 18:02 ? 00:00:00 [git-annex] <defunct>
me 5923 5510 0 18:02 ? 00:00:00 [git-annex] <defunct>
me 6513 31565 0 18:05 pts/2 00:00:00 [git-annex] <defunct>
me 6552 5510 0 18:06 ? 00:00:00 [git-annex] <defunct>
me 7797 5510 0 18:09 ? 00:00:00 [git-annex] <defunct>
me 7873 31565 0 18:09 pts/2 00:00:00 [git-annex] <defunct>
me 8708 31565 0 18:10 pts/2 00:00:00 [git-annex] <defunct>
me 9821 5510 0 18:12 ? 00:00:00 [git-annex] <defunct>
me 9841 31565 0 18:14 pts/2 00:00:00 [git-annex] <defunct>
me 10462 5510 0 18:23 ? 00:00:00 [git-annex] <defunct>
me 10522 31565 0 18:24 pts/2 00:00:00 [git-annex] <defunct>
me 12777 31565 0 18:34 pts/2 00:00:00 [git-annex] <defunct>
me 13878 31565 0 18:35 pts/2 00:00:00 [git-annex] <defunct>
me 14254 5510 0 18:36 ? 00:00:00 [git-annex] <defunct>
me 14276 31565 0 18:36 pts/2 00:00:00 [git-annex] <defunct>
me 15932 5510 0 18:55 ? 00:00:00 git-annex transferkeys --readfd 37 --writefd 20
me 16022 31565 0 18:55 pts/2 00:00:00 git-annex transferkeys --readfd 28 --writefd 22
me 16079 16022 0 18:55 pts/2 00:00:00 git --git-dir=/mnt/debian/home/me/annex-backup/.git --work-tree=/mnt/debian/home/me/annex-backup cat-file --batch
me 16081 15932 0 18:55 ? 00:00:00 git --git-dir=/home/me/annex/.git --work-tree=/home/me/annex cat-file --batch
me 25136 25135 0 20:15 pts/6 00:00:00 grep -i git
me 31565 31478 0 17:42 pts/2 00:00:21 git-annex webapp
me 31580 31565 0 17:42 pts/2 00:00:00 git --git-dir=/mnt/debian/home/me/annex-backup/.git --work-tree=/mnt/debian/home/me/annex-backup cat-file --batch
me 31590 31565 0 17:42 pts/2 00:00:00 git --git-dir=/mnt/debian/home/me/annex-backup/.git --work-tree=/mnt/debian/home/me/annex-backup cat-file --batch
me 31618 31565 0 17:42 pts/2 00:00:00 git --git-dir=/mnt/debian/home/me/annex-backup/.git --work-tree=/mnt/debian/home/me/annex-backup cat-file --batch
me 31635 27578 8 17:42 ? 00:13:42 /usr/lib/firefox/firefox /mnt/debian/home/me/annex-backup/.git/annex/webapp.html
me 31689 31565 0 17:42 pts/2 00:00:00 git --git-dir=/mnt/debian/home/me/annex-backup/.git --work-tree=/mnt/debian/home/me/annex-backup check-attr -z --stdin annex.backend annex.numcopies --
me 31812 31565 0 17:42 pts/2 00:00:00 [git-annex] <defunct>
me 31835 1 0 17:42 ? 00:00:02 ssh: .git/annex/ssh/example.net [mux]\"\"\"]]
"""]]

View file

@ -0,0 +1,10 @@
[[!comment format=mdwn
username="http://joeyh.name/"
ip="209.250.56.47"
subject="comment 3"
date="2013-11-03T01:31:26Z"
content="""
`ps fax` is much easier to read
Yes, the assistant can be started by either `git annex assistant` or, if it's not already running, `git annex webapp`
"""]]

View file

@ -0,0 +1,49 @@
[[!comment format=mdwn
username="https://www.google.com/accounts/o8/id?id=AItOawmNu4V5fvpLlBhaCUfXXOB0MI5NXwh8SkU"
nickname="Adam"
subject="comment 4"
date="2013-11-03T01:35:32Z"
content="""
Ah, thank you. I get lost in ps's man page. :)
[[!format sh \"\"\"
31635 ? Rl 16:16 \_ /usr/lib/firefox/firefox /mnt/debian/home/me/annex-backup/.git/annex/webapp.html
31565 pts/2 Sl+ 0:21 | \_ git-annex webapp
31580 pts/2 S+ 0:00 | \_ git --git-dir=/mnt/debian/home/me/annex-backup/.git --work-tree=/mnt/debian/home/me/annex-backup cat-file --batch
31590 pts/2 S+ 0:00 | \_ git --git-dir=/mnt/debian/home/me/annex-backup/.git --work-tree=/mnt/debian/home/me/annex-backup cat-file --batch
31618 pts/2 S+ 0:00 | \_ git --git-dir=/mnt/debian/home/me/annex-backup/.git --work-tree=/mnt/debian/home/me/annex-backup cat-file --batch
31689 pts/2 SN+ 0:00 | \_ git --git-dir=/mnt/debian/home/me/annex-backup/.git --work-tree=/mnt/debian/home/me/annex-backup check-attr -z --stdin annex.backend annex.numcopies --
31812 pts/2 Z 0:00 | \_ [git-annex] <defunct>
3404 pts/2 Z 0:04 | \_ [git-annex] <defunct>
5457 pts/2 Z+ 0:00 | \_ [git-annex] <defunct>
5732 pts/2 Z+ 0:00 | \_ [git-annex] <defunct>
5752 pts/2 Z+ 0:00 | \_ [git-annex] <defunct>
6513 pts/2 Z+ 0:00 | \_ [git-annex] <defunct>
7873 pts/2 Z 0:00 | \_ [git-annex] <defunct>
8708 pts/2 Z+ 0:00 | \_ [git-annex] <defunct>
9841 pts/2 Z+ 0:00 | \_ [git-annex] <defunct>
10522 pts/2 Z 0:00 | \_ [git-annex] <defunct>
12777 pts/2 Z+ 0:00 | \_ [git-annex] <defunct>
13878 pts/2 Z+ 0:00 | \_ [git-annex] <defunct>
14276 pts/2 Z+ 0:00 | \_ [git-annex] <defunct>
16022 pts/2 Sl 0:00 | \_ git-annex transferkeys --readfd 28 --writefd 22
16079 pts/2 S 0:00 | \_ git --git-dir=/mnt/debian/home/me/annex-backup/.git --work-tree=/mnt/debian/home/me/annex-backup cat-file --batch
26828 pts/6 S+ 0:00 | \_ grep -i git
31835 ? Ss 0:02 ssh: .git/annex/ssh/example.net [mux]
5510 ? Sl 0:06 git-annex assistant
5522 ? S 0:00 \_ git --git-dir=/home/me/annex/.git --work-tree=/home/me/annex cat-file --batch
5573 ? S 0:00 \_ git --git-dir=/home/me/annex/.git --work-tree=/home/me/annex cat-file --batch
5679 ? SN 0:00 \_ git --git-dir=/home/me/annex/.git --work-tree=/home/me/annex check-attr -z --stdin annex.backend annex.numcopies --
5680 ? Z 0:03 \_ [git-annex] <defunct>
5710 ? Z 0:00 \_ [git-annex] <defunct>
5905 ? Z 0:00 \_ [git-annex] <defunct>
5923 ? Z 0:00 \_ [git-annex] <defunct>
6552 ? Z 0:00 \_ [git-annex] <defunct>
7797 ? Z 0:00 \_ [git-annex] <defunct>
9821 ? Z 0:00 \_ [git-annex] <defunct>
10462 ? Z 0:00 \_ [git-annex] <defunct>
14254 ? Z 0:00 \_ [git-annex] <defunct>
15932 ? Sl 0:00 \_ git-annex transferkeys --readfd 37 --writefd 20
16081 ? S 0:00 \_ git --git-dir=/home/me/annex/.git --work-tree=/home/me/annex cat-file --batch
5785 ? Ss 0:00 ssh: .git/annex/ssh/example.net [mux] \"\"\"]]
"""]]

View file

@ -0,0 +1,14 @@
[[!comment format=mdwn
username="http://joeyh.name/"
ip="209.250.56.47"
subject="comment 7"
date="2013-11-03T01:09:16Z"
content="""
You can set it up that way, but the often confusing behavior (including not being able to umount a drive that has the git-annex assistant deamon running in it!) is why the webapp attempt to steer users toward making bare reposotories on USB drives.
If you click on \"Add another repository\" -> \"Removable drive\", you get a bare repository.
If you click on upper-right menu -> \"Add another local repository\" and enter a path, and tell it to combine the repositories, you get a synced non-bare repository, and potentially problems unmounting the drive since you now have 2 assistant daemons running.
I have now added a further link to the nice removable drive path to that second UI path.
"""]]

View file

@ -0,0 +1,10 @@
[[!comment format=mdwn
username="https://www.google.com/accounts/o8/id?id=AItOawmNu4V5fvpLlBhaCUfXXOB0MI5NXwh8SkU"
nickname="Adam"
subject="comment 8"
date="2013-11-03T01:13:26Z"
content="""
Thanks for the explanation, Joey. I just posted a [comment](http://git-annex.branchable.com/bugs/Unnecessary_remote_transfers/#comment-f7110e694a9951d8ab546b8dec568bfa) about this on the bug report too. Maybe the problem is simply that the Removable Drive option doesn't allow using internal, non-removable drives.
BTW, I don't know if this is relevant, but I only see one \"git-annex assistant\" process running.
"""]]