summaryrefslogtreecommitdiff
path: root/doc/design/assistant/syncing.mdwn
Commit message (Collapse)AuthorAge
* design page for rate limitingGravatar Joey Hess2013-03-30
|
* thoughtsGravatar Joey Hess2013-03-20
|
* remove done itemGravatar Joey Hess2013-03-20
|
* remove done itemGravatar Joey Hess2013-03-20
|
* todoGravatar Joey Hess2013-03-13
|
* updateGravatar Joey Hess2013-03-10
|
* read through all design docs and updated done itemsGravatar Joey Hess2012-11-30
|
* when a Download finishes, queue UploadsGravatar Joey Hess2012-09-18
| | | | | | | | | | | | | | | | | | | This ensures file propigate takes place in situations such as: Usb drive A is connected to B. A's master branch is already in sync with B, but it is being used to sneakernet some files around, so B downloads those. There is no master branch change, so C does not request these files. B needs to upload the files it just downloaded on to C, etc. My first try at this, I saw loops happen. B uploaded to C, which then tried to upload back to B (because it had not received the updated git-annex branch from B yet). B already had the file, but it still created a transfer info file from the incoming transfer, and its watcher saw that be removed, and tried to upload back to C. These loops should have been fixed by my previous commit. (They never affected ssh remotes, only local ones, it seemed.) While C might still try to upload to B, or to some other remote that already has the file, the extra work dies out there.
* avoid starting a download for a local transfer when the remote already has ↵Gravatar Joey Hess2012-09-18
| | | | | | | | | the key Turns out that recvkey already does this same check. This avoids a transfer file being created for the download that never happened, which in turn will avoid the assistant seeing that the download has finished, when no transfer actually took place.
* deferred downloadsGravatar Joey Hess2012-09-17
| | | | | | | | | | | | | Now when a download is queued and there's no known remote to get it from, it's added to a deferred download list, which will be retried later. The Merger thread tries to queue any deferred downloads when it receives a push to the git-annex branch. Note that the Merger thread now also forces an update of the git-annex branch. The assistant was not updating this branch before, and it saw a (mostly) correct view of state, but now that incoming pushes go to synced/git-annex, it needs to be merged in.
* noteGravatar Joey Hess2012-09-17
|
* sync: Pushes the git-annex branch to remote/synced/git-annex, rather than ↵Gravatar Joey Hess2012-09-16
| | | | | | | | | | | | | directly to remote/git-annex. This fixes a problem I was seeing in the assistant where two remotes would attempt to sync with one another at the same time, and both failed pushing the diverged git-annex branch. Then when both tried to resolve the failed push, they each modified their git-annex branch, which again each blocked the other from pushing into it. The result was that the git-annex branches were perpetually diverged (despite having the same content!) and once the assistant fell into this trap, it couldn't get out and always had to do the slow push/fail/pull/merge/push/fail cycle.
* blog for the dayGravatar Joey Hess2012-09-15
|
* found some bugsGravatar Joey Hess2012-09-15
|
* move todo item to right place; replyGravatar Joey Hess2012-09-13
|
* fix bug where resuming a transfer also started one queued transferGravatar Joey Hess2012-08-31
|
* bugGravatar Joey Hess2012-08-29
|
* fix repeated pause and resume of a transferGravatar Joey Hess2012-08-29
| | | | | | | I had an intuition that throwTo might be blocking because an exception was caught and the exception handler was running. This seems to be the case, and is avoided by using try. However, I can't really find anywhere in throwTo's documentation that justifies this behavior.
* updateGravatar Joey Hess2012-08-29
|
* pause, then resume, then pause failsGravatar Joey Hess2012-08-29
| | | | Most puzzling.
* updateGravatar Joey Hess2012-08-29
|
* simple transfer queue display cleanupGravatar Joey Hess2012-08-29
| | | | | Don't display redundant queued downloads. The only problem with this is that it reduces the total number of queued transfers the webapp displays.
* updateGravatar Joey Hess2012-08-29
|
* remove todo about behavior that turns out to be desiredGravatar Joey Hess2012-08-29
| | | | | | Drives that are not mounted still have Remotes, and it makes sense to scan them along with all the other remotes on startup, so we end up with queued transfers for them, that will be used when they get mounted.
* updatesGravatar Joey Hess2012-08-28
|
* finally merge the assistant into masterGravatar Joey Hess2012-08-27
|\ | | | | | | | | Progress bars still need to be done, otherwise it's fully working. Although much work remains to hit all the use cases.
| * Merge branch 'master' into assistantGravatar Joey Hess2012-08-27
| |\ | | | | | | | | | | | | | | | | | | Conflicts: debian/changelog Updated changelog for assistant and webapp
* | | updateGravatar Joey Hess2012-08-26
| | |
* | | updateGravatar Joey Hess2012-08-26
| |/ |/|
* | blog for the dayGravatar Joey Hess2012-08-24
| |
* | updateGravatar Joey Hess2012-08-24
| |
* | updateGravatar Joey Hess2012-08-23
| |
* | updateGravatar Joey Hess2012-08-22
| |
* | blog for the dayGravatar Joey Hess2012-08-21
| |
| * Merge branch 'master' into assistantGravatar Joey Hess2012-07-25
| |\ | |/ |/|
* | updateGravatar Joey Hess2012-07-25
| |
| * Merge branch 'master' into assistantGravatar Joey Hess2012-07-25
| |\ | |/ |/| | | | | Conflicts: Makefile
* | works on Gnome 3Gravatar Joey Hess2012-07-23
| |
* | TransferScanner design thoughtsGravatar Joey Hess2012-07-22
| |
| * Merge branch 'master' into assistantGravatar Joey Hess2012-07-22
| |\ | |/ |/| | | | | Conflicts: git-annex.cabal
* | updateGravatar Joey Hess2012-07-20
| |
| * Merge branch 'master' into assistantGravatar Joey Hess2012-07-20
| |\ | |/ |/|
* | updateGravatar Joey Hess2012-07-19
| |
| * Merge branch 'master' into assistantGravatar Joey Hess2012-07-19
| |\ | |/ |/|
* | blog for the dayGravatar Joey Hess2012-07-18
| |
| * Merge branch 'threaded' into assistantGravatar Joey Hess2012-07-18
| |\ | |/ |/|
* | blog for the day and updatesGravatar Joey Hess2012-07-17
| |
| * Merge branch 'master' into assistantGravatar Joey Hess2012-07-17
| |\ | |/ |/|
* | updatesGravatar Joey Hess2012-07-17
| |
| * Merge branch 'master' into assistantGravatar Joey Hess2012-07-16
| |\ | |/ |/|