couchdb-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From rnew...@apache.org
Subject [1/2] couch-replicator commit: updated refs/heads/master to bf636d3
Date Mon, 18 Jul 2016 09:29:19 GMT
Repository: couchdb-couch-replicator
Updated Branches:
  refs/heads/master 8629fb269 -> bf636d308


Change process_response clause

An older version of ibrowse would throw a {error, {'EXIT', Reason}},
when a connection:close header was received. In the newer version
of ibrowse, it throws {error, req_timedout} instead. This leads
to a maybe_retry function call because we do not have a clause
that handles this error. Which inevitably leads to the replication
process dying once it exhausts the retry limit. So we change
the process_response clause to address this bug. However, this also
means we could end up trying forever for real timeouts.

BugzId:69053


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

Branch: refs/heads/master
Commit: 8283a30c1406b083a68835a27fe1d4a41e124e9e
Parents: 8629fb2
Author: Tony Sun <tony.sun@cloudant.com>
Authored: Mon Jun 27 18:43:57 2016 -0700
Committer: Robert Newson <rnewson@apache.org>
Committed: Mon Jul 18 10:28:11 2016 +0100

----------------------------------------------------------------------
 src/couch_replicator_httpc.erl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/couchdb-couch-replicator/blob/8283a30c/src/couch_replicator_httpc.erl
----------------------------------------------------------------------
diff --git a/src/couch_replicator_httpc.erl b/src/couch_replicator_httpc.erl
index 668b218..17e2091 100644
--- a/src/couch_replicator_httpc.erl
+++ b/src/couch_replicator_httpc.erl
@@ -128,7 +128,7 @@ process_response({error, connection_closing}, Worker, HttpDb, Params,
_Cb) ->
     stop_and_release_worker(HttpDb#httpdb.httpc_pool, Worker),
     throw({retry, HttpDb, Params});
 
-process_response({error, {'EXIT',{normal,_}}}, _Worker, HttpDb, Params, _Cb) ->
+process_response({error, req_timedout}, _Worker, HttpDb, Params, _Cb) ->
     % ibrowse worker terminated because remote peer closed the socket
     % -> not an error
     throw({retry, HttpDb, Params});


Mime
View raw message