[SERVER-78133] Remove locking dasserts/invariants from implementations of RecordStore Created: 15/Jun/23 Updated: 26/Oct/23 |
|
| Status: | Backlog |
| Project: | Core Server |
| Component/s: | Storage |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Kaloian Manassiev | Assignee: | Backlog - Storage Execution Team |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | former-storex-namer, tech-debt | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Assigned Teams: |
Storage Execution
|
| Participants: |
| Description |
|
The RecordStore/SortedDataInterface and their different implementations are internal detail of the higher-level MongoDB concept of "Collection". As such it shouldn't be checking whether there is a lock on a collection, because that is a layering violation. Furthermore, we have a lot of tests which use LockerNoop just to avoid these invariants (LockerNoop returns true for the assertions of whether something is locked). This ticket is to remove all assertions like this one. |
| Comments |
| Comment by Benety Goh [ 20/Jun/23 ] |
|
This ticket belongs in the Execution backlog and does not need to stay in the PM-2144 epic. |
| Comment by Benety Goh [ 20/Jun/23 ] |
|
We acknowledge the layer violation this ticket highlights but would like to structure the integration layer above the RecordStore a little better to contain these assertions rather than removing them outright at this time. |