[
https://issues.apache.org/jira/browse/COUCHDB-3271?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15832003#comment-15832003
]
ASF subversion and git services commented on COUCHDB-3271:
----------------------------------------------------------
Commit ec2235196d7195afab59cedc2d61a02b11596ab4 in couchdb-fabric's branch
refs/heads/master from [~vatamane]
[ https://git-wip-us.apache.org/repos/asf?p=couchdb-fabric.git;h=ec22351 ]
In open_revs, do not count errors in quorum threshold calculation
Previously quorum check looked just at the number of replies and decided quorum
was met even if it only received errors. For example, if 2 nodes are in
maintance mode it might receive this sequence of replies:
`rexi_EXIT, rexi_EXIT, ok`
In that case after the first two it would decide quorum (r=2) was met, return
what it had so far ([]) and kill the remaining worker, who was about to return
a valid revision.
The fix is to keep track of error replies and subtract them when deciding if
quorum was met.
COUCHDB-3271
> Replications crash with 'kaboom' exit
> --------------------------------------
>
> Key: COUCHDB-3271
> URL: https://issues.apache.org/jira/browse/COUCHDB-3271
> Project: CouchDB
> Issue Type: Bug
> Reporter: Nick Vatamaniuc
>
> In a few cases it was observer that replications were crashing with `kaboom`
> exit. This happens here:
> https://github.com/apache/couchdb-couch-replicator/blob/cb41bacb2a06613649df46d62249afebda42b8c0/src/couch_replicator_api_wrap.erl#L236
> this is during an open_revs call one of the docs. So change feed found it but
> then could not get its revisions.
> The reason is open_revs get request returns an empty result when more than
> one nodes are in maintenance mode.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)