[SERVER-44030] Remove global X lock for mapReduce Created: 15/Oct/19  Updated: 05/Nov/19  Resolved: 05/Nov/19

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Task Priority: Major - P3
Reporter: Lingzhi Deng Assignee: James Wahlin
Resolution: Duplicate Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Backports
Duplicate
duplicates SERVER-44434 Remove legacy mapReduce command mongo... Closed
Issue split
split from SERVER-43242 Deadlock involving commands acquiring... Closed
Backport Requested:
v4.2
Sprint: Query 2019-11-18
Participants:

 Description   

Remove global X lock acquisition for mapReduce. 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.



 Comments   
Comment by James Wahlin [ 05/Nov/19 ]

Closing this as a duplicate of SERVER-44434, under which we will remove the legacy mapReduce implementation from the code base. This will occur early in the 4.5 development cycle.

Comment by Craig Homa [ 29/Oct/19 ]

James will investigate if there are related tickets that can be linked to this, from which we will determine next steps.

Generated at Thu Feb 08 05:04:47 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.