[SERVER-34072] config.databases writes with new version field should take the global IX lock rather than the fcvLock Created: 15/Feb/18 Updated: 29/Oct/23 Resolved: 11/Jun/18 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Sharding |
| Affects Version/s: | None |
| Fix Version/s: | 4.0.0-rc5, 4.1.1 |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Dianna Hohensee (Inactive) | Assignee: | Esha Maharishi (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 | ||||||||||||||||||||||||||||
| Backport Requested: |
v4.0
|
||||||||||||||||||||||||||||
| Sprint: | Sharding 2018-05-21, Sharding 2018-06-04, Sharding 2018-06-18 | ||||||||||||||||||||||||||||
| Participants: | |||||||||||||||||||||||||||||
| Linked BF Score: | 0 | ||||||||||||||||||||||||||||
| Description |
|
It has been decided that the fcvLock should only be utilized by operations that must do a network call while ensuring the FCV doesn't change. config.databases writes can simply be protected by the global IX lock, which ensures a conflict with setFCV's global S lock acquisition here and here. Combined with an upgrade/downgrade process for config.databases schema, this is sufficient to ensure config.databases entries will have version fields in FCV 4.0. This work is further necessary to ensure better concurrency between setFCV and sharding createDatabase command, because the fcvLock will continue to be held for the duration of setFCV, which currently would prevent createDatabase during upgrade/downgrade. |
| Comments |
| Comment by Githook User [ 11/Jun/18 ] |
|
Author: {'username': 'EshaMaharishi', 'name': 'Esha Maharishi', 'email': 'esha.maharishi@mongodb.com'}Message: (cherry picked from commit f4f7f2cc15ad46f20de8566e913fb5d25cfd4778)
(cherry picked from commit 0254efea54ab78d065e7df44a2d21b4c5b62212e) |
| Comment by Githook User [ 11/Jun/18 ] |
|
Author: {'username': 'EshaMaharishi', 'name': 'Esha Maharishi', 'email': 'esha.maharishi@mongodb.com'}Message: (cherry picked from commit f4f7f2cc15ad46f20de8566e913fb5d25cfd4778)
(cherry picked from commit 0254efea54ab78d065e7df44a2d21b4c5b62212e) |
| Comment by Githook User [ 11/Jun/18 ] |
|
Author: {'username': 'EshaMaharishi', 'name': 'Esha Maharishi', 'email': 'esha.maharishi@mongodb.com'}Message: |
| Comment by Githook User [ 11/Jun/18 ] |
|
Author: {'username': 'EshaMaharishi', 'name': 'Esha Maharishi', 'email': 'esha.maharishi@mongodb.com'}Message: |