move: Improve resuming a move that was interrupted after the object was transferred
authorJoey Hess <joeyh@joeyh.name>
Wed, 21 Oct 2020 14:31:56 +0000 (10:31 -0400)
committerJoey Hess <joeyh@joeyh.name>
Wed, 21 Oct 2020 14:31:56 +0000 (10:31 -0400)
commit0133b7e5a89bd786a90842671081fae9da1dadd7
tree31471a26a91b6efa0dcd9635617efab42ef2a9e1
parent363acfb55ba974e86630e251a64b482b16492499
move: Improve resuming a move that was interrupted after the object was transferred

In cases where numcopies checks prevented the resumed move from dropping
the object from the source repository, it now relies on a log of recent
moves to replicate the behavior of the interrupted command.

Performance: Probably noticable impact, since it has to add to the log,
check the log, and remove from the log. Seems worth it to avoid this
annoying edge case. The log functions are pretty well optimised to avoid
unncessary work.

An performance improvement to make later would be to avoid cleanup doing
anything if it's not written to the log file, and has confirmed that the
log file does not contain the log line.

This commit was sponsored by Jake Vosloo on Patreon.
Annex/Locations.hs
Assistant.hs
CHANGELOG
Command/Move.hs
doc/todo/interruped_move_resume.mdwn