diff options
Diffstat (limited to 'src/mongo/db/views/durable_view_catalog.h')
-rw-r--r-- | src/mongo/db/views/durable_view_catalog.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/mongo/db/views/durable_view_catalog.h b/src/mongo/db/views/durable_view_catalog.h index 03bacb2f3fb..62fd5db2c4d 100644 --- a/src/mongo/db/views/durable_view_catalog.h +++ b/src/mongo/db/views/durable_view_catalog.h @@ -63,10 +63,16 @@ public: /** * Thread-safe method to mark a catalog name was changed. This will cause the in-memory - * view catalog to be marked invalid + * view catalog to be reloaded immediately. */ static void onExternalChange(OperationContext* opCtx, const NamespaceString& name); + /** + * Thread-safe method to clear the in-memory state of the view catalog when the 'system.views' + * collection is dropped. + */ + static void onSystemViewsCollectionDrop(OperationContext* opCtx, const NamespaceString& name); + using Callback = std::function<Status(const BSONObj& view)>; virtual void iterate(OperationContext* opCtx, Callback callback) = 0; virtual void iterateIgnoreInvalidEntries(OperationContext* opCtx, Callback callback) = 0; |