summaryrefslogtreecommitdiff
path: root/src/mongo/db/storage
diff options
context:
space:
mode:
authorDianna Hohensee <dianna.hohensee@mongodb.com>2019-10-04 17:43:58 +0000
committerevergreen <evergreen@mongodb.com>2019-10-04 17:43:58 +0000
commitc01979c362e490a0b66c3b062e516ce5e6df054c (patch)
tree4054780d696917d39cf9d867a10b808eccf35be3 /src/mongo/db/storage
parentb35dd89515473c97a87b3c06897e8a7ab51c93cc (diff)
downloadmongo-c01979c362e490a0b66c3b062e516ce5e6df054c.tar.gz
SERVER-43757 background validate must skip indexes whose persisted and in-memory idents do not match
Diffstat (limited to 'src/mongo/db/storage')
-rw-r--r--src/mongo/db/storage/durable_catalog.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/mongo/db/storage/durable_catalog.h b/src/mongo/db/storage/durable_catalog.h
index 4b5d9c206ff..8a87d2ae37b 100644
--- a/src/mongo/db/storage/durable_catalog.h
+++ b/src/mongo/db/storage/durable_catalog.h
@@ -72,6 +72,12 @@ public:
virtual BSONCollectionCatalogEntry::MetaData getMetaData(OperationContext* opCtx,
const NamespaceString& nss) const = 0;
+
+ /**
+ * Updates the catalog entry for the collection 'nss' with the fields specified in 'md'. If
+ * 'md.indexes' contains a new index entry, then this method generates a new index ident and
+ * adds it to the catalog entry.
+ */
virtual void putMetaData(OperationContext* opCtx,
const NamespaceString& nss,
BSONCollectionCatalogEntry::MetaData& md) = 0;
@@ -162,6 +168,10 @@ public:
NamespaceString ns,
StringData indexName) = 0;
+ /**
+ * Updates the persisted catalog entry for 'ns' with the new index and creates the index on
+ * disk.
+ */
virtual Status prepareForIndexBuild(OperationContext* opCtx,
NamespaceString ns,
const IndexDescriptor* spec,