improve transfer stages for some commands

move --to, copy --to, mirror --to: When concurrency is enabled, run cleanup
actions in separate job pool from uploads.

transferStages was confusingly named, it's only useful when doing downloads
as then the verify actions can be run concurrently with other downloads.
For commands that upload, there will be more concurrency from running
cleanup actions in a separate job pool.

As for sync, I left it using downloadStages although that's not optimal
for the part of a sync that uploads. Perhaps it should use the union of
both?
This commit is contained in:
Joey Hess 2020-05-26 11:55:50 -04:00
parent 0d82a88742
commit e04a931439
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38
6 changed files with 22 additions and 10 deletions

View file

@ -194,7 +194,7 @@ instance DeferredParseClass SyncOptions where
seek :: SyncOptions -> CommandSeek
seek o = do
prepMerge
startConcurrency transferStages (seek' o)
startConcurrency downloadStages (seek' o)
seek' :: SyncOptions -> CommandSeek
seek' o = do