[SERVER-79149] move side transaction boundaries in OpObserverImpl for preparing multi-document transaction Created: 20/Jul/23 Updated: 29/Oct/23 Resolved: 27/Jul/23 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 7.1.0-rc0 |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Benety Goh | Assignee: | Benety Goh |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||
| Sprint: | Execution NAMR Team 2023-07-24, Execution NAMR Team 2023-08-07 | ||||||||
| Participants: | |||||||||
| Description |
|
The side transaction currently defined in OpObserverImpl::onTransactionPrepare() makes it a challenge to extract some operations that are not directly related to writing the oplog entry. It may be worthwhile to look into defining the boundaries of the side transaction outside the OpObserverImpl method as an intermediate step to extracting some of these operations into a new OpObserver. For onTransactionPrepare, in production code, there is only one caller in TransactionParticipant, which makes this refactoring somewhat straightforward. |
| Comments |
| Comment by Githook User [ 24/Jul/23 ] |
|
Author: {'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}Message: |