[SERVER-40269] commitTransaction should assert that the prepare oplog entry is majority committed Created: 21/Mar/19 Updated: 29/Oct/23 Resolved: 09/Apr/19 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Replication |
| Affects Version/s: | None |
| Fix Version/s: | 4.1.10 |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Louis Williams | Assignee: | Lingzhi Deng |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | prepare_errors | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||
| Sprint: | Repl 2019-04-08, Repl 2019-04-22 | ||||||||||||
| Participants: | |||||||||||||
| Linked BF Score: | 21 | ||||||||||||
| Description |
|
There are no assertions that a prepare oplog entry must be majority committed before "commitTransaction" is received. This is only an understood precondition that is not enforced. With this assertion, we can guarantee collection counts are correct during rollback because it would be impossible for a "prepare" and "commit" operation to both be rolled back. See |
| Comments |
| Comment by Githook User [ 09/Apr/19 ] |
|
Author: {'name': 'Lingzhi Deng', 'username': 'ldennis', 'email': 'lingzhi.deng@mongodb.com'}Message: |