[SERVER-36683] *MongoDB 3.2 Only*: Aggregation with self join can cause deadlock on cursor timeout Created: 15/Aug/18  Updated: 06/Dec/22  Resolved: 24/Aug/18

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

Type: Task Priority: Major - P3
Reporter: James Wahlin Assignee: Backlog - Query Team (Inactive)
Resolution: Won't Fix Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
Assigned Teams:
Query
Participants:
Case:

 Description   

The stack trace produced by a self-deadlock:

__lll_lock_wait
_L_lock_854
pthread_mutex_lock
mongo::CursorManager::eraseCursor
mongo::GlobalCursorIdCache::eraseCursor
mongo::CursorManager::eraseCursorGlobalIfAuthorized
mongo::receivedKillCursors
mongo::assembleResponse
mongo::DBDirectClient::say
mongo::DBClientBase::killCursor
mongo::DBClientCursor::kill
mongo::DBClientCursor::~DBClientCursor
mongo::DBClientCursor::~DBClientCursor
mongo::DocumentSourceLookUp::~DocumentSourceLookUp
mongo::DocumentSourceLookUp::~DocumentSourceLookUp
std::deque<...>::_M_destroy_data_aux
std::deque<...>::~deque
mongo::Pipeline::~Pipeline
mongo::PipelineProxyStage::~PipelineProxyStage
mongo::PipelineProxyStage::~PipelineProxyStage
mongo::PlanExecutor::~PlanExecutor
mongo::ClientCursor::~ClientCursor
mongo::CursorManager::timeoutCursors
mongo::GlobalCursorIdCache::timeoutCursors
mongo::ClientCursorMonitor::run
mongo::BackgroundJob::jobBody
execute_native_thread_routine
start_thread
clone



 Comments   
Comment by Ian Whalen (Inactive) [ 24/Aug/18 ]

Closing as Won't Fix since this was already fixed in 3.4 and 3.2 is EOL in ~1 month.

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