| Commit message (Collapse) | Author | Age |
... | |
| |
|
|
|
|
|
|
| |
The fun part was making it move things from TransferQueue to currentTransfers
entirely atomically. Which will avoid inconsistent display if the WebApp
renders the current status at just the wrong time. STM to the rescue!
|
|
|
|
|
|
| |
I've convinced myself that nothing in DaemonStatus can deadlock,
as it always keepts the TMVar full. That was the only reason it was in the
Annex monad.
|
|
|
|
|
| |
First use of it is to make the status checkpointer thread block until
there is really a change to the status.
|
| |
|
|
|
|
|
|
| |
There's still a bug; if the child updates its transfer info file,
then the data from it will superscede the TransferInfo, losing the
info that we should wait on this child.
|
|
|
|
| |
finally!
|
|
|
|
|
|
|
| |
Added knownRemotes to DaemonStatus. This list is not entirely trivial to
calculate, and having it here should make it easier to add/remove remotes
on the fly later on. It did require plumbing the daemonstatus through to
some more threads.
|
| |
|
| |
|
| |
|
|
|
|
| |
Currently wakes up once a day, and does nothing. :)
|
| |
|
| |
|
|
|
|
|
| |
Also afterLastDaemonRun, with 10 minute slop to handle majority of clock
skew issues.
|
|
|