summaryrefslogtreecommitdiff
path: root/src/mongo/db/repl/oplog_entry.h
diff options
context:
space:
mode:
authorMax Hirschhorn <max.hirschhorn@mongodb.com>2021-01-08 16:38:10 +0000
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2021-01-08 17:54:16 +0000
commit4363473d75cab2a487c6a6066b601d52230c7e1a (patch)
treeffc41f8d9b17cd3862fce562053e28140d685679 /src/mongo/db/repl/oplog_entry.h
parent503c08c5cf2a68b56b46b2a5c52126fa65848c44 (diff)
downloadmongo-4363473d75cab2a487c6a6066b601d52230c7e1a.tar.gz
SERVER-49907 Unroll applyOps entry and do resharding CRUD application.
Introduces a ReshardingOplogBatchPreparer class for creating writer vectors. Also splits batch application in resharding's oplog application into a first phase of CRUD application and a second phase of session application.
Diffstat (limited to 'src/mongo/db/repl/oplog_entry.h')
-rw-r--r--src/mongo/db/repl/oplog_entry.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/mongo/db/repl/oplog_entry.h b/src/mongo/db/repl/oplog_entry.h
index b901c4ae291..e093b526a3c 100644
--- a/src/mongo/db/repl/oplog_entry.h
+++ b/src/mongo/db/repl/oplog_entry.h
@@ -491,6 +491,9 @@ public:
void setPostImageOp(std::shared_ptr<DurableOplogEntry> postImageOp);
void setPostImageOp(const BSONObj& postImageOp);
+ bool isForReshardingSessionApplication() const;
+ void setIsForReshardingSessionApplication(bool isForReshardingSessionApplication = true);
+
std::string toStringForLogging() const;
/**
@@ -543,12 +546,15 @@ public:
private:
DurableOplogEntry _entry;
- boost::optional<bool> _isForCappedCollection;
// We use std::shared_ptr<DurableOplogEntry> rather than boost::optional<DurableOplogEntry> here
// so that OplogEntries are cheaper to copy.
std::shared_ptr<DurableOplogEntry> _preImageOp;
std::shared_ptr<DurableOplogEntry> _postImageOp;
+
+ bool _isForCappedCollection = false;
+
+ bool _isForReshardingSessionApplication = false;
};
std::ostream& operator<<(std::ostream& s, const DurableOplogEntry& o);