From 46eb48d7c007506691976858c29a0c6f1d32c430 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Fri, 4 Sep 2020 13:23:33 -0400 Subject: [PATCH] Retry transfers to exporttree=yes remotes same as for other remotes The comment about noRetry is not well-justified, because transfers to many remotes cannot be resumed, but retries are still allowed for those. --- CHANGELOG | 1 + Command/Export.hs | 4 +--- ..._export__34_____40__and_probably_copy__41___to_S3.mdwn | 2 ++ .../comment_2_6b655d30bf07518f33ec42cdeabef4ef._comment | 8 ++++++++ 4 files changed, 12 insertions(+), 3 deletions(-) create mode 100644 doc/todo/tolerate_intermittent_errors_upon___34__export__34_____40__and_probably_copy__41___to_S3/comment_2_6b655d30bf07518f33ec42cdeabef4ef._comment diff --git a/CHANGELOG b/CHANGELOG index 6c8819b56b..dfcc431360 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -27,6 +27,7 @@ git-annex (8.20200815) UNRELEASED; urgency=medium * Limit retrying of failed transfers when forward progress is being made to 5, to avoid some unusual edge cases where too much retrying could result in far more data transfer than makes sense. + * Retry transfers to exporttree=yes remotes same as for other remotes. -- Joey Hess Fri, 14 Aug 2020 14:57:45 -0400 diff --git a/Command/Export.hs b/Command/Export.hs index d1fde25d1e..db52609a7f 100644 --- a/Command/Export.hs +++ b/Command/Export.hs @@ -281,9 +281,7 @@ performExport r db ek af contentsha loc allfilledvar = do sent <- tryNonAsync $ case ek of AnnexKey k -> ifM (inAnnex k) ( notifyTransfer Upload af $ - -- Using noRetry here because interrupted - -- exports cannot be resumed. - upload (uuid r) k af noRetry $ \pm -> do + upload (uuid r) k af stdRetry $ \pm -> do let rollback = void $ performUnexport r db [ek] loc sendAnnex k rollback $ \f -> diff --git a/doc/todo/tolerate_intermittent_errors_upon___34__export__34_____40__and_probably_copy__41___to_S3.mdwn b/doc/todo/tolerate_intermittent_errors_upon___34__export__34_____40__and_probably_copy__41___to_S3.mdwn index bddcb7f19f..949fe95714 100644 --- a/doc/todo/tolerate_intermittent_errors_upon___34__export__34_____40__and_probably_copy__41___to_S3.mdwn +++ b/doc/todo/tolerate_intermittent_errors_upon___34__export__34_____40__and_probably_copy__41___to_S3.mdwn @@ -4,3 +4,5 @@ If git-annex already does that, please pardon my noise and close this TODO. [[!meta author=yoh]] [[!tag projects/datalad]] + +[[fixed|done]] --[[Joey]] diff --git a/doc/todo/tolerate_intermittent_errors_upon___34__export__34_____40__and_probably_copy__41___to_S3/comment_2_6b655d30bf07518f33ec42cdeabef4ef._comment b/doc/todo/tolerate_intermittent_errors_upon___34__export__34_____40__and_probably_copy__41___to_S3/comment_2_6b655d30bf07518f33ec42cdeabef4ef._comment new file mode 100644 index 0000000000..ff9f82d315 --- /dev/null +++ b/doc/todo/tolerate_intermittent_errors_upon___34__export__34_____40__and_probably_copy__41___to_S3/comment_2_6b655d30bf07518f33ec42cdeabef4ef._comment @@ -0,0 +1,8 @@ +[[!comment format=mdwn + username="joey" + subject="""comment 2""" + date="2020-09-04T17:00:11Z" + content=""" +What about the other side of export, import? Looks to me that does not +retry either. +"""]]