avoid rsync/gcrypt ssh startup delay with -J
Avoid a delay at startup when concurrency is enabled and there are rsync or gcrypt special remotes, which was caused by git-annex opening a ssh connection to the remote too early. sshOptions makes a connection to the ssh server if one is not already open, when concurrency is enabled. Avoid doing that at startup, when the remote list is being built, but the remote may not be used at all. Instead, rsync/gcrypt now runs sshOptions once per ssh connection to the server. This should not be significant overhead since Remote.Git already has the same overhead (as do Bup and Ddar).
This commit is contained in:
parent
43805a0be9
commit
44de3fff0b
5 changed files with 39 additions and 26 deletions
|
@ -25,9 +25,9 @@ type RsyncUrl = String
|
|||
|
||||
data RsyncOpts = RsyncOpts
|
||||
{ rsyncUrl :: RsyncUrl
|
||||
, rsyncOptions :: [CommandParam]
|
||||
, rsyncUploadOptions :: [CommandParam]
|
||||
, rsyncDownloadOptions :: [CommandParam]
|
||||
, rsyncOptions :: Annex [CommandParam]
|
||||
, rsyncUploadOptions :: Annex [CommandParam]
|
||||
, rsyncDownloadOptions :: Annex [CommandParam]
|
||||
, rsyncShellEscape :: Bool
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue