[DOCS-13166] Investigate changes in SERVER-44029: Remove global X lock for replSetResizeOplog Created: 23/Oct/19 Updated: 13/Nov/23 Resolved: 13/Jan/20 |
|
| Status: | Closed |
| Project: | Documentation |
| Component/s: | manual, Server |
| Affects Version/s: | None |
| Fix Version/s: | 4.3.1, 4.2.2, Server_Docs_20231030, Server_Docs_20231106, Server_Docs_20231105, Server_Docs_20231113 |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Backlog - Core Eng Program Management Team | Assignee: | Ravind Kumar (Inactive) |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Participants: | |||||||||
| Days since reply: | 4 years, 4 weeks, 2 days ago | ||||||||
| Epic Link: | DOCS: 4.4 Server Release Work | ||||||||
| Description |
DescriptionDownstream Change Summary The 'replSetResizeOplog' command does not take a global write lock anymore. It now uses an exclusive collection lock on the oplog collection. Description of Linked TicketRemove global X lock acquisition for replSetResizeOplog. This is because acquiring global lock in X mode can be blocked by prepared transactions. The enqueued global X lock can block oplog queries which need the global IS lock. If these oplog queries and the data replication are needed to satisfy the prepared transaction's write concern, then the prepare transaction and replication cannot make progress. Thus a deadlock occurs. Alternatively, if removing global X lock is not an option, deprecate the command or make sure it won't be blocked on prepare transactions. Scope of changesImpact to Other DocsMVP (Work and Date)Resources (Scope or Design Docs, Invision, etc.) |
| Comments |
| Comment by Githook User [ 13/Jan/20 ] |
|
Author: {'name': 'Ravind Kumar', 'email': 'ravind.kumar@mongodb.com'}Message:
|
| Comment by Githook User [ 13/Jan/20 ] |
|
Author: {'name': 'Ravind Kumar', 'email': 'ravind.kumar@mongodb.com'}Message:
|