summaryrefslogtreecommitdiff
path: root/src/mongo/db/repl/replication_coordinator_impl.h
diff options
context:
space:
mode:
authorWilliam Schultz <william.schultz@mongodb.com>2019-03-06 16:39:15 -0500
committerWilliam Schultz <william.schultz@mongodb.com>2019-03-06 16:39:15 -0500
commitfcbc0c9c936c83612545ee5873b649854e4b5e57 (patch)
tree6a300e7e88c49fb92c00bced869ba422c61e064e /src/mongo/db/repl/replication_coordinator_impl.h
parent884ac2862eda54e15d99e4db253b822cb4a90f1d (diff)
downloadmongo-fcbc0c9c936c83612545ee5873b649854e4b5e57.tar.gz
SERVER-39356 Refactor speculative majority read data structures and methods to use timestamps instead of optimes
This patch refactors the SpeculativeMajorityReadInfo class and the awaitOpTimeCommitted method to accept timestamps as input instead of optimes. When waiting for an operation to majority commit, term information, which is included in optimes, isn't necessary, since timestamps are totally ordered within a local oplog, and so are safely comparable. It is, for example, safe to determine if a local oplog entry is majority committed by checking if its timestamp is less than that node's local view of the majority commit point. This patch should not introduce any observable functional changes.
Diffstat (limited to 'src/mongo/db/repl/replication_coordinator_impl.h')
-rw-r--r--src/mongo/db/repl/replication_coordinator_impl.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/mongo/db/repl/replication_coordinator_impl.h b/src/mongo/db/repl/replication_coordinator_impl.h
index 883d41555e5..0755c971ce2 100644
--- a/src/mongo/db/repl/replication_coordinator_impl.h
+++ b/src/mongo/db/repl/replication_coordinator_impl.h
@@ -171,7 +171,7 @@ public:
virtual Status waitUntilOpTimeForRead(OperationContext* opCtx,
const ReadConcernArgs& readConcern) override;
- Status awaitOpTimeCommitted(OperationContext* opCtx, OpTime opTime) override;
+ Status awaitTimestampCommitted(OperationContext* opCtx, Timestamp ts) override;
virtual OID getElectionId() override;
virtual int getMyId() const override;