QUERY_TASK_ENQUEUE_MUTEX

(Republishing, or using this info in a commercial product/website, is prohibited without permission. All other uses are permitted. If in doubt, please ask.)

(Back to main page…)

Description:

This wait type appears to be when a thread for certain batch-mode query operations is waiting for other such threads to finish initializing.

(Books Online description: N/A)

Questions/comments on this wait type? Click here to send Paul an email, especially if you have any information to add to this topic.

Added in SQL Server version:

2012

Removed in SQL Server version:

N/A

Extended Events wait_type value:

The map_key value in sys.dm_xe_map_values is 696 in 2012 and 714 in 2014 RTM. After 2014 RTM, you must check the DMV to get the latest value as some map_key values have changed in later builds.

Other information:

I have not seen this thread be a noticeable contention point.

Known occurrences in SQL Server (list number matches call stack list):

  1. Waiting for other parallel threads to finish initializing while running a hash join involving a columnstore index

And many other similar callstacks.

Abbreviated call stacks (list number matches known occurrences list):

  1. SOS_Task::PostWait+0x6f
    WaitableBase::Wait+0xb7
    CBpQScanColumnStoreScan::InitRowsetColumnBatch+0x808
    CBpQScanColumnStoreScan::BpOpen+0x5a
    CBpQScan::DefaultOpen+0x48
    CBpQScanHashJoin::Main+0xf7
    CBpQScanHashJoin::BpGetNextBatch+0x28
    CQScanBatchHelper::GetRow+0x7c
    CQScanXProducerNew::GetRowHelper+0x63
    CQScanXProducerNew::GetRow+0x15
    FnProducerOpen+0x5b
    FnProducerThread+0x80b
    SubprocEntrypoint+0x1201
    SOS_Task::Param::Execute+0x231
    SOS_Scheduler::RunTask+0xad