[SERVER-70607] Index build commit not following copy-on-write semantics Created: 17/Oct/22 Updated: 01/Feb/23 Resolved: 01/Feb/23 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Gregory Noma | Assignee: | Backlog - Storage Execution Team |
| Resolution: | Duplicate | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||
| Assigned Teams: |
Storage Execution
|
||||||||||||||||
| Operating System: | ALL | ||||||||||||||||
| Participants: | |||||||||||||||||
| Linked BF Score: | 12 | ||||||||||||||||
| Description |
|
When committing an index build, we set the commit timestamp on the IndexCatalogEntry. However, we are operating on a shallow copy and thus we are bypassing the copy-on-write semantics of the collection catalog. |
| Comments |
| Comment by Henrik Edin [ 01/Feb/23 ] |
|
This will be fixed when we remove minVisibleSnapshot from indexes |
| Comment by Gregory Noma [ 17/Oct/22 ] |
|
There is a comment stating that no one can read the index entry before setting the timestamp because we are still holding a MODE_X lock on the collection, but perhaps with lock-free reads this is no longer the case. |