summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTess Avitabile <tess.avitabile@mongodb.com>2019-05-10 17:21:07 -0400
committerTess Avitabile <tess.avitabile@mongodb.com>2019-05-13 17:57:24 -0400
commitbe4af0a025853999181a2bed0d70d14230b4ba86 (patch)
tree0cbff7359167a9dec98ce39d8501db9b56b11cbf
parent7c958ef34989959984983126be0ff3bc9513d489 (diff)
downloadmongo-be4af0a025853999181a2bed0d70d14230b4ba86.tar.gz
SERVER-41081 do_not_advance_commit_point_beyond_last_applied_term.js must wait for Node E to reach stopReplProducerOnDocument failpoint
(cherry picked from commit 9a7ec37bdb20b042c682e466b33f9ed90a5b4cc2)
-rw-r--r--jstests/replsets/do_not_advance_commit_point_beyond_last_applied_term.js2
-rw-r--r--src/mongo/db/repl/oplog_fetcher.cpp1
2 files changed, 3 insertions, 0 deletions
diff --git a/jstests/replsets/do_not_advance_commit_point_beyond_last_applied_term.js b/jstests/replsets/do_not_advance_commit_point_beyond_last_applied_term.js
index c57f80d3719..b5e67365eb4 100644
--- a/jstests/replsets/do_not_advance_commit_point_beyond_last_applied_term.js
+++ b/jstests/replsets/do_not_advance_commit_point_beyond_last_applied_term.js
@@ -7,6 +7,7 @@
(function() {
"use strict";
+ load("jstests/libs/check_log.js");
load("jstests/libs/write_concern_util.js"); // for [stop|restart]ServerReplication.
const dbName = "test";
@@ -83,6 +84,7 @@
data: {document: {msg: "new primary"}}
}));
nodeE.reconnect([nodeA, nodeC, nodeD]);
+ checkLog.contains(nodeE, "stopReplProducerOnDocument fail point is enabled.");
assert.soon(() => {
return 1 === nodeE.getDB(dbName)[collName].find({term: 1}).itcount();
});
diff --git a/src/mongo/db/repl/oplog_fetcher.cpp b/src/mongo/db/repl/oplog_fetcher.cpp
index a9f496d99ad..fe1bbd516d3 100644
--- a/src/mongo/db/repl/oplog_fetcher.cpp
+++ b/src/mongo/db/repl/oplog_fetcher.cpp
@@ -410,6 +410,7 @@ StatusWith<BSONObj> OplogFetcher::_onSuccessfulBatch(const Fetcher::QueryRespons
if (!queryResponse.documents.empty() &&
SimpleBSONObjComparator::kInstance.evaluate(
fp.getData()["document"].Obj() == queryResponse.documents.front()["o"].Obj())) {
+ log() << "stopReplProducerOnDocument fail point is enabled.";
return Status(ErrorCodes::FailPointEnabled,
"stopReplProducerOnDocument fail point is enabled");
}