taskd/clone.sh: exponential backoff for git-svn retries
commit18e1389dc8003194d32d3ede20b44736f8385157
authorKyle J. McKay <mackyle@gmail.com>
Sat, 13 Jun 2020 00:40:54 +0000 (12 17:40 -0700)
committerKyle J. McKay <mackyle@gmail.com>
Sat, 13 Jun 2020 00:40:54 +0000 (12 17:40 -0700)
tree877231e63bd27725c675b11d1be426b3d99fd134
parentc1fe219de981cf2dabaffa4116631700b0998cd8
taskd/clone.sh: exponential backoff for git-svn retries

When `git-svn fetch` fails and makes no progress, double the
delay between attempts as long there is no progress made.

If any progress has been made, reset the delay back to
the minimum.

Increase the number of consecutive no-progress retries from
five to seven since the wait will be much longer between retries.

Since no retry can take place unless the server has been
successfully contacted and the initial branch layout set up,
any invalid `git-svn` clone source URL will still fail
immediately regardless of this change.

Additionally, since the update process (i.e. jobd/update.sh)
does *NOT* perform any delay+retry (rather it's left up to
the normal jobd.pl update retry mechanism), there's no impact
to jobd.pl operation with this change.

Signed-off-by: Kyle J. McKay <mackyle@gmail.com>
taskd/clone.sh