[SERVER-51319] Check DatabaseShardingState::checkDbVersion after acquiring a storage snapshot for AutoGetCollection*LFR Created: 02/Oct/20 Updated: 29/Oct/23 Resolved: 16/Dec/20 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Storage |
| Affects Version/s: | None |
| Fix Version/s: | 4.9.0 |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Dianna Hohensee (Inactive) | Assignee: | Dianna Hohensee (Inactive) |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||||||||||||||||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||||||||||||||||||||||||||||||
| Sprint: | Execution Team 2020-11-16, Execution Team 2020-11-30, Execution Team 2020-12-14, Execution Team 2020-12-28 | ||||||||||||||||||||||||||||||||||||||||
| Participants: | |||||||||||||||||||||||||||||||||||||||||
| Description |
|
DatabaseShardingState::checkDbVersion is normally called in DBLock, which AutoGetCollectionLFR will not use. I think we'll want to perform the check after setting up consistent catalog state (opening a storage snapshot), but need to prove it first in Also remove the dassert lock checks in DatabaseShardingState::get() and CollectionShardingState::get() in this task. |
| Comments |
| Comment by Githook User [ 16/Dec/20 ] |
|
Author: {'name': 'Dianna Hohensee', 'email': 'dianna.hohensee@mongodb.com', 'username': 'DiannaHohensee'}Message: CollectionShardingState and DatabaseShardingState can now be accessed without a lock via new The shard key will now be available in the AutoGetCollection* RAII types via the CollectionPtr. This |