summaryrefslogtreecommitdiff
path: root/src/mongo/db/repl/storage_interface_mock.h
diff options
context:
space:
mode:
authorMaria van Keulen <maria@mongodb.com>2017-09-23 17:59:29 -0400
committerMaria van Keulen <maria@mongodb.com>2017-10-09 13:28:52 -0400
commit84690cb878db1b231c00d3c9fcb0005ca7cb6361 (patch)
tree738d18a8d529febb9ce18e3659f8abd020e35590 /src/mongo/db/repl/storage_interface_mock.h
parent11704779713e962e7756291960104d517adac16c (diff)
downloadmongo-84690cb878db1b231c00d3c9fcb0005ca7cb6361.tar.gz
SERVER-30131 Ensure collections on local have UUIDs
Diffstat (limited to 'src/mongo/db/repl/storage_interface_mock.h')
-rw-r--r--src/mongo/db/repl/storage_interface_mock.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/mongo/db/repl/storage_interface_mock.h b/src/mongo/db/repl/storage_interface_mock.h
index f0c14a61b9e..9c88532781f 100644
--- a/src/mongo/db/repl/storage_interface_mock.h
+++ b/src/mongo/db/repl/storage_interface_mock.h
@@ -122,6 +122,9 @@ public:
BoundInclusion boundInclusion,
std::size_t limit)>;
using IsAdminDbValidFn = stdx::function<Status(OperationContext* opCtx)>;
+ using GetCollectionUUIDFn = stdx::function<StatusWith<OptionalCollectionUUID>(
+ OperationContext* opCtx, const NamespaceString& nss)>;
+ using UpgradeUUIDSchemaVersionNonReplicatedFn = stdx::function<Status(OperationContext* opCtx)>;
StorageInterfaceMock() = default;
@@ -253,6 +256,15 @@ public:
return 0;
}
+ StatusWith<OptionalCollectionUUID> getCollectionUUID(OperationContext* opCtx,
+ const NamespaceString& nss) override {
+ return getCollectionUUIDFn(opCtx, nss);
+ }
+
+ Status upgradeUUIDSchemaVersionNonReplicated(OperationContext* opCtx) override {
+ return upgradeUUIDSchemaVersionNonReplicatedFn(opCtx);
+ }
+
void setStableTimestamp(ServiceContext* serviceCtx, SnapshotName snapshotName) override;
void setInitialDataTimestamp(ServiceContext* serviceCtx, SnapshotName snapshotName) override;
@@ -330,6 +342,15 @@ public:
IsAdminDbValidFn isAdminDbValidFn = [](OperationContext*) {
return Status{ErrorCodes::IllegalOperation, "IsAdminDbValidFn not implemented."};
};
+ GetCollectionUUIDFn getCollectionUUIDFn = [](
+ OperationContext* opCtx, const NamespaceString& nss) -> StatusWith<OptionalCollectionUUID> {
+ return Status{ErrorCodes::IllegalOperation, "GetCollectionUUIDFn not implemented."};
+ };
+ UpgradeUUIDSchemaVersionNonReplicatedFn upgradeUUIDSchemaVersionNonReplicatedFn =
+ [](OperationContext* opCtx) -> Status {
+ return Status{ErrorCodes::IllegalOperation,
+ "UpgradeUUIDSchemaVersionNonReplicatedFn not implemented."};
+ };
private:
mutable stdx::mutex _mutex;
@@ -337,6 +358,8 @@ private:
bool _rbidInitialized = false;
SnapshotName _stableTimestamp = SnapshotName::min();
SnapshotName _initialDataTimestamp = SnapshotName::min();
+ OptionalCollectionUUID _uuid;
+ bool _schemaUpgraded;
};
} // namespace repl