Category: Wait Types
-
RESTORE_MSDA_THREAD_BARRIER Wait Type in SQL Server
RESTORE_MSDA_THREAD_BARRIER is recorded during restores from multiple backup devices (striped backups). Threads restoring parts of a single data block from the multiple streams synchronise at a barrier: all must finish their piece before the group advances to the next block. The wait is that rendezvous. Striped restores live at this barrier constantly, in small doses.…
Written by
-
RTDATA_LIST Wait Type in SQL Server
RTDATA_LIST is recorded when a thread waits for access to the data structure holding performance metrics (RunTimeData) for natively-compiled stored procedures, In-Memory OLTP’s compiled-to-machine-code procedures. Both reporting execution statistics and maintaining the structure (cleanup, new entries) pass through it. No native procedures, no meaningful RTDATA_LIST. Is It a Problem? Usually not, with a version-specific exception:…
Written by
-
SESSION_WAIT_STATS_CHILDREN Wait Type in SQL Server
SESSION_WAIT_STATS_CHILDREN is recorded when a thread waits to synchronise updates to the per-session wait statistics behind sys.dm_exec_session_wait_stats, the DMV that gives you sys.dm_os_wait_stats-style numbers scoped to one session. Parallel queries mean multiple child tasks feeding one session’s tally, hence the synchronisation and the name. Wait statistics about maintaining wait statistics: agreeably meta. Is It a…
Written by
-
SHUTDOWN Wait Type in SQL Server
SHUTDOWN is recorded when a SHUTDOWN statement is waiting for active connections to exit, specifically when the shutdown request is blocked behind queries being run by connections with sysadmin-level (sa) access. A graceful shutdown wants running work to complete; while it waits, the initiating thread sits here. If SQL Server “will not shut down”, at…
Written by
-
SLEEP_BPOOL_FLUSH Wait Type in SQL Server
SLEEP_BPOOL_FLUSH is recorded when the checkpoint process deliberately pauses issuing new writes because it detects it is saturating the I/O subsystem (around 20ms average write latency during normal operation, 100ms during shutdown). Checkpoint backs off for a few milliseconds, lets in-flight writes land, then resumes. It is self-throttling by design: checkpoint being a considerate neighbour…
Written by
-
SLEEP_BPOOL_STEAL and Buffer Pool Memory Wait Types in SQL Server
Three sleep waits share the theme of “no free memory right now, nap and retry”, and this page covers them together: Individually benign; collectively a memory-pressure gauge. Are They a Problem? Occasional traces, no. A rising trend, yes, in the informative sense: these waits increasing means threads are routinely finding the free list empty, which…
Written by
-
SLEEP_DBSTARTUP and Startup Sleep Wait Types in SQL Server
Three sleep waits measure phases of instance startup, and this page covers them together: They fire once per startup and then go quiet until the next one. Are They a Problem? Not as waits; they are startup phase markers on the benign filter list. Their value is forensic: SLEEP_DBSTARTUP‘s total after a restart tells you…
Written by
-
SNI_CRITICAL_SECTION Wait Type in SQL Server
SNI_CRITICAL_SECTION is recorded when a thread waits for a critical section inside the SQL Server Network Interface (SNI), the layer that encapsulates TDS packets and talks to clients over the configured transports. Processing communication packets involves shared structures, and threads take brief turns through their guards. Connection-handling plumbing, active on every instance that has clients.…
Written by
-
SNI_TASK_COMPLETION Wait Type in SQL Server
SNI_TASK_COMPLETION is recorded when a thread waits for tasks to finish during a NUMA node state change, specifically around creating a new SNI network listener after a NUMA node comes online. SQL Server distributes connection listeners across NUMA nodes, and topology changes mean listener work. NUMA node state changes are rare events (startup, hot-add scenarios,…
Written by
-
SOS_DISPATCHER_MUTEX Wait Type in SQL Server
SOS_DISPATCHER_MUTEX is recorded when a thread waits for the critical section inside the generic dispatcher-pool management code, including when a pool is being adjusted (grown or shrunk). Dispatcher pools are the special-purpose thread pools used by the backup subsystem, In-Memory OLTP, and Extended Events; their management operations serialise here. It pairs with DISPATCHER_QUEUE_SEMAPHORE (idle pool…
Written by
Blog Categories
- Backups & Recovery (6)
- High Availability (HA) (6)
- Installation & Configuration (12)
- Labs (1)
- Maintenance (3)
- Monitoring (20)
- Performance Tuning (8)
- Security (Encryption & Permissions) (5)
- T-SQL Fundamentals (8)
- Troubleshooting (6)
- Wait Types (201)
Latest Posts
- When Shrinking Temp DB Just Won’t Shrink
- SQL Server Replication Monitoring Scripts
- SQL Server Wait Types Library
- PARALLEL_REDO_WORKER_SYNC Wait Type in SQL Server
- PARALLEL_REDO_WORKER_WAIT_WORK Wait Type in SQL Server
- PERFORMANCE_COUNTERS_RWLOCK Wait Type in SQL Server
Blog Tags
Always On Availability Groups (4) Certificates & Encryption (1) Database Backups & Recovery (10) Database Maintenance (6) DBA Tools (29) Performance Troubleshooting (9) PowerShell (4) Query Behaviour (4) Schema Changes (1) SQL Agent (1) SQL Interview Questions (1) SQL Scripts (23) SQL Server Administration (11) SQL Server Configuration (7) SQL Server Errors (5) SQL Server High Availability (4) SQL Server Internals (4) SQL Server Management Studio (SSMS) (7) SQL Server Monitoring (10) SQL Server Networking (9) SQL Server Replication (2) SQL Server Security (8) SQL Server Versions (2) Storage and Capacity (14) T-SQL (9) Transaction Logs (8) Troubleshooting (14) Windows Server (4)