-
Type: Improvement
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Fully Compatible
-
Execution Team 2023-05-29, Execution Team 2023-06-12
When we are replicating delete operations on a collection, we make a pair of calls to the OpObserver interface to notify listeners of the beginning (aboutToDelete) and end (onDelete) of the delete operation. OpObserver implementations sometimes (using FreeMonOpObserver as an example) have to stash some state in aboutToDelete()* that will be picked up in onDelete(). Typically this is accomplished by attaching the temporary state to the OperationContext as a decorator.
This ticket explores an alternative to the OperationContext decorations by making the OplogDeleteEntryArgs a decorable type and having the OpObservers stash the temporary state in the OplogDeleteEntryArgs struct instead.
- is related to
-
SERVER-76271 Remove OpObserverShardingImpl Dependency on OpObserverImpl
- Closed
- related to
-
SERVER-77554 defer oplog reservation in collection_internal::deleteDocument()
- Closed
-
SERVER-80423 Make the preImage document always available to OplogDeleteEntryArgs
- Closed