You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by ko...@apache.org on 2013/10/02 23:00:50 UTC

git commit: updated refs/heads/1901-atomic-multipart-retries to df0423b

Updated Branches:
  refs/heads/1901-atomic-multipart-retries a72d1f9c8 -> df0423b5d


Bubble up missing_stub exceptions for proper retry

A missing_stub exception is special in that the replicator retries the
request without the atts_since optimmization.

COUCHDB-1901


Project: http://git-wip-us.apache.org/repos/asf/couchdb/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb/commit/df0423b5
Tree: http://git-wip-us.apache.org/repos/asf/couchdb/tree/df0423b5
Diff: http://git-wip-us.apache.org/repos/asf/couchdb/diff/df0423b5

Branch: refs/heads/1901-atomic-multipart-retries
Commit: df0423b5d5c35170626cfc0c10216d2e72e3a83e
Parents: a72d1f9
Author: Adam Kocoloski <ad...@cloudant.com>
Authored: Wed Oct 2 17:00:16 2013 -0400
Committer: Adam Kocoloski <ad...@cloudant.com>
Committed: Wed Oct 2 17:00:16 2013 -0400

----------------------------------------------------------------------
 src/couch_replicator/src/couch_replicator_api_wrap.erl | 2 ++
 1 file changed, 2 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/couchdb/blob/df0423b5/src/couch_replicator/src/couch_replicator_api_wrap.erl
----------------------------------------------------------------------
diff --git a/src/couch_replicator/src/couch_replicator_api_wrap.erl b/src/couch_replicator/src/couch_replicator_api_wrap.erl
index eb7d845..52e15b7 100644
--- a/src/couch_replicator/src/couch_replicator_api_wrap.erl
+++ b/src/couch_replicator/src/couch_replicator_api_wrap.erl
@@ -215,6 +215,8 @@ open_doc_revs(#httpdb{} = HttpDb, Id, Revs, Options, Fun, Acc) ->
     receive
         {'DOWN', Ref, process, Pid, {exit_ok, Ret}} ->
             Ret;
+        {'DOWN', Ref, process, Pid, {{nocatch, {missing_stub,_} = Stub}, _}} ->
+            throw(Stub);
         {'DOWN', Ref, process, Pid, Else} ->
             Url = couch_util:url_strip_password(
                 couch_replicator_httpc:full_url(HttpDb, [{path,Path}, {qs,QS}])