Category: Wait Types

  • QRY_PROFILE_LIST_MUTEX Wait Type in SQL Server

    QRY_PROFILE_LIST_MUTEX is recorded when a thread waits for access to a profile list inside the query profiling statistics mechanism, the infrastructure behind lightweight query execution statistics (live query stats, sys.dm_exec_query_profiles, and the lightweight profiling that later versions enable by default). Mostly invisible plumbing, with one documented sharp edge. Is It a Problem? Normally no, but…

  • QUERY_TASK_ENQUEUE_MUTEX Wait Type in SQL Server

    QUERY_TASK_ENQUEUE_MUTEX appears to be recorded when a thread involved in certain batch-mode query operations waits for its sibling threads to finish initialising. Batch-mode execution spins up cooperating thread sets, and their startup coordination passes through this mutex. It keeps company with the HT* family and BPSORT in the batch-mode machinery. Is It a Problem? No;…

  • REDO_THREAD_PENDING_WORK Wait Type in SQL Server

    REDO_THREAD_PENDING_WORK is recorded on an Availability Group secondary when a redo thread is waiting to be signalled that more log has arrived to apply. When the secondary is fully caught up, the redo thread has nothing to do and parks here until the primary generates more transactions. It is one of the most common top…

  • REPLICA_WRITES Wait Type in SQL Server

    REPLICA_WRITES is recorded while a task waits for page writes to a database snapshot or a DBCC replica to complete. Both targets are the same machinery: user-created database snapshots receive copy-on-write pages, and DBCC CHECKDB runs against a hidden internal snapshot that works identically. If this wait is on your board, snapshot files are absorbing…

  • REQUEST_DISPENSER_PAUSE Wait Type in SQL Server

    REQUEST_DISPENSER_PAUSE is recorded while a task waits for all outstanding I/O against a database to complete, so that I/O can be frozen for an external snapshot backup. It is the setup phase of the freeze covered by DISKIO_SUSPEND: first drain everything in flight (this wait, one second at a time until the drain completes), then…

  • RESERVED_MEMORY_ALLOCATION_EXT Wait Type in SQL Server

    RESERVED_MEMORY_ALLOCATION_EXT is recorded when a thread switches to preemptive mode while allocating memory that was already reserved for its query, in other words, drawing down its execution memory grant. The preemptive switch spares the allocation code from checking scheduling quantum exhaustion, the same mechanism as MEMORY_ALLOCATION_EXT, just against granted rather than general memory. Every sort,…

  • RESOURCE_GOVERNOR_IDLE Wait Type in SQL Server

    RESOURCE_GOVERNOR_IDLE is recorded when a query is forced to sit idle because of a Resource Governor CPU cap (CAP_CPU_PERCENT). A cap is a hard ceiling: where the softer MAX_CPU_PERCENT only bites under contention, CAP_CPU_PERCENT inserts idle time into the runnable queue so the pool cannot exceed its percentage even on an otherwise idle server. This…

  • RESOURCE_SEMAPHORE_MUTEX Wait Type in SQL Server

    RESOURCE_SEMAPHORE_MUTEX is a wait for the mutex protecting the critical section where queries acquire the resources they need to compile or execute, memory grants and thread reservations. Only one thread at a time can be inside that code. If the resource acquisition then fails, the thread releases the mutex and records the real wait, RESOURCE_SEMAPHORE,…

  • RESOURCE_SEMAPHORE_SMALL_QUERY Wait Type in SQL Server

    RESOURCE_SEMAPHORE_SMALL_QUERY is a wait on the small-query memory grant semaphore. SQL Server reserves a separate slice of grant memory for cheap queries so they never queue behind memory-hungry monsters. This wait means even that fast lane is congested: a small query could not get its modest grant immediately. The engine caps the damage: if the…

  • RESOURCE_SEMAPHORE Wait Type in SQL Server

    Part of the SQL Server Wait Types Library Before SQL Server runs a query that sorts or hashes large data sets, it requests a memory reservation, called a memory grant, from the resource semaphore. The semaphore controls how much of the total server memory can be allocated for query workspace at once. If the request…