-
Type:
Improvement
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Storage Execution
-
None
-
3
-
TBD
-
None
-
None
-
None
-
None
-
None
-
None
Currently, the replica set's internal multi-document transaction machinery encounters challenges when attempting to combine write/delete operations and 'c' oplog entries within a single applyOps operation (i.e., under a single timestamp).
This limitation became evident during the work on SERVER-99804. In that context, we updated the DDL commit to the shard catalog using writes to a local replicated collection, along with a 'c' oplog entry to instruct secondaries on how to update their in-memory cache state. That ticket aimed to commit all shard catalog modifications transactionally—combining writes and the 'c' oplog entry—under one timestamp using a single WriteUnitOfWork (WUOW) with kGroupForTransaction. Achieving this required implementing a specialized pathway for the newly introduced 'c' oplog entry within the batched write interface, ensuring that it was grouped with the insert/delete operations in a single applyOps call, without requiring a separate timestamp.
Therefore, the goal of this ticket is to enhance the replica set's internal multi-document transaction interface to support a generalized pathway for 'c' oplog entries. This will enable them to be included alongside other insert/delete operations in a single applyOps call, without the need for custom logic for each individual 'c' oplog entry.
- is depended on by
-
SERVER-100654 Enhancing shard-local catalog commit as a single applyOps
-
- Blocked
-
- is related to
-
SERVER-99804 Update the 'c' oplog entry (databaseMetadataUpdate) to fill a temporary DSS
-
- Closed
-