[SERVER-72761] Split prepareTransaction oplog entries during secondary oplog application Created: 11/Jan/23 Updated: 29/Oct/23 Resolved: 26/Jan/23 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 6.3.0-rc0 |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Wenbin Zhu | Assignee: | Wenbin Zhu |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Backwards Compatibility: | Fully Compatible |
| Sprint: | Repl 2023-01-23, Repl 2023-02-06 |
| Participants: |
| Description |
|
Currently in secondary oplog application, a prepareTransaction oplog entry is applied in its own batch and fillWriterVectors() simply adds it to the writeVector that is responsible for the `admin.$cmd` namespace. This ticket will instead find all the CRUD entries in the prepared transaction when encountering a prepareTransaction oplog entry in fillWriterVectors(), split them by nss/_id and dispatch them to the various writerVectors. |