[SERVER-69997] Implement two-phase commit of writable collection instances Created: 26/Sep/22 Updated: 29/Oct/23 Resolved: 12/Oct/22 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 6.2.0-rc0 |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Henrik Edin | Assignee: | Henrik Edin |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Backwards Compatibility: | Fully Compatible |
| Sprint: | Execution Team 2022-10-17 |
| Participants: |
| Description |
|
Mark the collection as DDL commit pending in the CollectionCatalog while a DDL operation is being committed. Reads that start during this time can read this flag and fallback to instantiating the Collection instance from the storage snapshot. By doing this we can guarantee that Collection instances are fully in sync with the storage snapshot in all circumstances. |
| Comments |
| Comment by Githook User [ 06/Oct/22 ] |
|
Author: {'name': 'Henrik Edin', 'email': 'henrik.edin@mongodb.com', 'username': 'henrikedin'}Message: Namespaces and UUIDs are marked as pending during commits of writable collection instances. This will be used to trigger the instantiation of collection instances from the storage engine for reads that come in during the pending commit state. |