summaryrefslogtreecommitdiff
path: root/src/mongo/db/repl/replication_coordinator_external_state.h
diff options
context:
space:
mode:
authorMisha Tyulenev <misha@mongodb.com>2016-08-26 18:25:39 -0400
committerMisha Tyulenev <misha@mongodb.com>2016-08-26 22:45:18 -0400
commit355ff243409c2a330d64f212d809609402e80bb9 (patch)
tree45b25daeed78db03bc8030fb6d415403588c697c /src/mongo/db/repl/replication_coordinator_external_state.h
parent155a4d97d7edbd56fb7f2efafa095168ef4d02d9 (diff)
downloadmongo-355ff243409c2a330d64f212d809609402e80bb9.tar.gz
SERVER-23892 Do periodic replicated writes while idle
Diffstat (limited to 'src/mongo/db/repl/replication_coordinator_external_state.h')
-rw-r--r--src/mongo/db/repl/replication_coordinator_external_state.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/mongo/db/repl/replication_coordinator_external_state.h b/src/mongo/db/repl/replication_coordinator_external_state.h
index f64214b462c..ca35b605a41 100644
--- a/src/mongo/db/repl/replication_coordinator_external_state.h
+++ b/src/mongo/db/repl/replication_coordinator_external_state.h
@@ -57,6 +57,7 @@ namespace repl {
class LastVote;
class ReplSettings;
class ReplicationCoordinator;
+class ReplicationExecutor;
using OnInitialSyncFinishedFn = stdx::function<void()>;
using StartInitialSyncFn = stdx::function<void(OnInitialSyncFinishedFn callback)>;
@@ -315,6 +316,22 @@ public:
* Returns true if the user specified to use the data replicator for initial sync.
*/
virtual bool shouldUseDataReplicatorInitialSync() const = 0;
+
+ /*
+ * Creates noop writer instance. Setting the _noopWriter member is not protected by a guard,
+ * hence it must be called before multi-threaded operations start.
+ */
+ virtual void setupNoopWriter(Seconds waitTime) = 0;
+
+ /*
+ * Starts periodic noop writes to oplog.
+ */
+ virtual void startNoopWriter(OpTime) = 0;
+
+ /*
+ * Stops periodic noop writes to oplog.
+ */
+ virtual void stopNoopWriter() = 0;
};
} // namespace repl