...
BugZero found this defect 2863 days ago.
On slow machines, it may be possible that the durable optime has not caught up with the committed optime before we disable replication the secondaries. This may lead to failed elections when we request one of the secondaries to step up to become primary. replSet.awaitReplication(); // Enable fail point to stop replication. var secondaries = replSet.getSecondaries(); secondaries.forEach(enableFailPoint); ... stepUp(secondary);
xgen-internal-githook commented on Tue, 11 Apr 2017 14:20:49 +0000: Author: {u'username': u'benety', u'name': u'Benety Goh', u'email': u'benety@mongodb.com'} Message: SERVER-28695 step_down_during_draining.js should wait for writes to be durable before disable replication on secondaries using fail point (cherry picked from commit 9df49e4e8b6b60106bbaad9f97d4457395ffacd0) Branch: v3.4 https://github.com/mongodb/mongo/commit/dce4c38455d8456e9439d725b5a14f9dd9170e95 xgen-internal-githook commented on Tue, 11 Apr 2017 14:20:13 +0000: Author: {u'username': u'benety', u'name': u'Benety Goh', u'email': u'benety@mongodb.com'} Message: Revert "SERVER-28695 step_down_during_draining.js should wait for writes to be durable before disable replication on secondaries using fail point" This reverts commit 9df49e4e8b6b60106bbaad9f97d4457395ffacd0. This commit is meant for the 3.4 branch only. Branch: master https://github.com/mongodb/mongo/commit/9eba33d5ee13b3cb9d71e255c5668e28f64c0f61 xgen-internal-githook commented on Mon, 10 Apr 2017 20:20:33 +0000: Author: {u'username': u'benety', u'name': u'Benety Goh', u'email': u'benety@mongodb.com'} Message: SERVER-28695 step_down_during_draining.js should wait for writes to be durable before disable replication on secondaries using fail point Branch: master https://github.com/mongodb/mongo/commit/9df49e4e8b6b60106bbaad9f97d4457395ffacd0 spencer commented on Fri, 7 Apr 2017 21:55:47 +0000: Why would this cause failed elections? I thought elections only considered lastAppliedOpTime, not the durable optimes?