[SERVER-82292] Make dbCheck thead killable during dbCheck Created: 18/Oct/23 Updated: 18/Oct/23 Resolved: 18/Oct/23 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Sean Zimmerman | Assignee: | Sean Zimmerman |
| Resolution: | Won't Do | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||
| Operating System: | ALL | ||||
| Backport Requested: |
v7.0, v6.0
|
||||
| Sprint: | Repl 2023-10-30 | ||||
| Participants: | |||||
| Description |
|
As part of dbCheck we need to enforce prepare conflicts for correctness purposes. When hitting a prepare conflict we have an invariant that a thread which hits a prepare conflict must be killable. We normally keep oplog applier threads unkillable, but when dbCheck is running on the oplog applier thread it must be made killable for the duration in case a prepare conflict is hit. This should be safe since no other operations can run on the thread while dbCheck is active |
| Comments |
| Comment by Sean Zimmerman [ 18/Oct/23 ] |
|
Fix won't work properly |