diff options
Diffstat (limited to 'src/mongo/db/op_observer_registry.h')
-rw-r--r-- | src/mongo/db/op_observer_registry.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/mongo/db/op_observer_registry.h b/src/mongo/db/op_observer_registry.h index c64537f5104..a9630eafb42 100644 --- a/src/mongo/db/op_observer_registry.h +++ b/src/mongo/db/op_observer_registry.h @@ -68,6 +68,40 @@ public: o->onCreateIndex(opCtx, nss, uuid, indexDoc, fromMigrate); } + virtual void onStartIndexBuild(OperationContext* opCtx, + const NamespaceString& nss, + CollectionUUID collUUID, + const UUID& indexBuildUUID, + const std::vector<BSONObj>& indexes, + bool fromMigrate) override { + ReservedTimes times{opCtx}; + for (auto& o : _observers) { + o->onStartIndexBuild(opCtx, nss, collUUID, indexBuildUUID, indexes, fromMigrate); + } + } + + virtual void onCommitIndexBuild(OperationContext* opCtx, + const NamespaceString& nss, + CollectionUUID collUUID, + const UUID& indexBuildUUID, + const std::vector<BSONObj>& indexes, + bool fromMigrate) override { + ReservedTimes times{opCtx}; + for (auto& o : _observers) { + o->onCommitIndexBuild(opCtx, nss, collUUID, indexBuildUUID, indexes, fromMigrate); + } + } + + virtual void onAbortIndexBuild(OperationContext* opCtx, + CollectionUUID collUUID, + const BSONObj& indexInfo, + bool fromMigrate) override { + ReservedTimes times{opCtx}; + for (auto& o : _observers) { + o->onAbortIndexBuild(opCtx, collUUID, indexInfo, fromMigrate); + } + } + void onInserts(OperationContext* const opCtx, const NamespaceString& nss, OptionalCollectionUUID uuid, |