git-annex/Assistant/Threads
Joey Hess 14d96b8e06 XMPP: Be better at responding to CanPush messages when busy with something else.
Observed: With 2 xmpp clients, one would sometimes stop responding
to CanPush messages. Often it was in the middle of a receive-pack
of its own (or was waiting for a failed one to time out).

Now these are always immediately responded to, which is fine; the point
of CanPush is to find out if there's another client out there that's
interested in our push.

Also, in queueNetPushMessage, queue push initiation messages when
we're already running the side of the push they would initiate.
Before, these messages were sent into the netMessagesPush channel,
which was wrong. The xmpp send-pack and receive-pack code discarded
such messages.

This still doesn't make XMPP push 100% robust. In testing, I am seeing
it sometimes try to run two send-packs, or two receive-packs at once
to the same client (probably because the client sent two requests).

Also, I'm seeing rather a lot of cases where it stalls out until it
runs into the 120 second timeout and cancels a push.

And finally, there seems to be a bug in runPush. I have logs that
show it running its setup action, but never its cleanup action.
How is this possible given its use of E.bracket? Either some exception
is finding its way through, or the action somehow stalls forever.
When this happens, one of the 2 clients stops syncing.
2013-05-21 00:59:38 -04:00
..
Committer.hs committer tweak to wait for Watcher to resume after a max-size commit 2013-04-25 00:48:09 -04:00
ConfigMonitor.hs webapp: Now allows restarting any threads that crash. 2013-01-26 17:09:33 +11:00
DaemonStatus.hs webapp: Fix a race that sometimes caused alerts or other notifications to be missed if they occurred while a page was loading. 2013-03-27 14:56:20 -04:00
Glacier.hs add additional debug info about reasons for transfers 2013-03-01 15:23:59 -04:00
Merger.hs assistant: Fix bug that could cause incoming pushes to not get merged into the local tree. 2013-04-30 16:37:13 -04:00
MountWatcher.hs sync, assistant: Sync with remotes that have annex-ignore set 2013-04-22 14:57:09 -04:00
NetWatcher.hs sync, assistant: Sync with remotes that have annex-ignore set 2013-04-22 14:57:09 -04:00
PairListener.hs refactor alert button creation code 2013-04-04 01:48:26 -04:00
Pusher.hs use a DList for the deferred downloads queue 2013-04-25 01:26:23 -04:00
SanityChecker.hs fixed the race breaking moving files from archive in direct mode 2013-03-04 14:25:22 -04:00
TransferPoller.hs remove debug 2013-04-11 16:36:45 -04:00
Transferrer.hs rename module 2013-04-23 11:38:52 -04:00
TransferScanner.hs check for unused keys on an unwanted remote, and move them off, before deleting it 2013-04-03 19:03:16 -04:00
TransferWatcher.hs more efficient uuid to remote lookup 2013-04-02 16:39:11 -04:00
Watcher.hs test suite passes in direct mode 2013-05-17 15:59:37 -04:00
WebApp.hs rename module 2013-05-12 19:19:28 -04:00
XMPPClient.hs XMPP: Be better at responding to CanPush messages when busy with something else. 2013-05-21 00:59:38 -04:00