Preskočiť na obsah
Skript

Aktuálne čakania na úrovni taskov

Práve čakajúce tasky používateľských session s typom čakania, trvaním, blockerom a resource_description.

aktualne-cakania-na-urovni-taskov.sql 22 riadkov · T-SQL
Parametre skriptu doplň a kopíruj hotový skript
/* DeadlockCafe | Aktuálne čakania na úrovni taskov
   Účel:  Práve čakajúce tasky používateľských session s typom čakania, trvaním, blockerom a resource_description.
   Režim: READ ONLY | SQL Server 2016 – 2022, on-premises
*/
SET NOCOUNT ON;

SELECT wt.session_id,
       wt.exec_context_id,
       wt.wait_type,
       wt.wait_duration_ms,
       wt.blocking_session_id,
       wt.resource_description,
       s.login_name,
       s.program_name,
       r.status                 AS request_status,
       DB_NAME(r.database_id)   AS database_name
FROM sys.dm_os_waiting_tasks AS wt
JOIN sys.dm_exec_sessions AS s ON s.session_id = wt.session_id
LEFT JOIN sys.dm_exec_requests AS r ON r.session_id = wt.session_id
WHERE s.is_user_process = 1
ORDER BY wt.wait_duration_ms DESC;
## Kedy použiť

Pri diagnostike PAGELATCH, LCK, PAGEIOLATCH, RESOURCE_SEMAPHORE alebo CXPACKET / CXCONSUMER.

## Ako čítať výsledok

`wait_type` a `resource_description` určujú triedu problému (napr. `2:1:1` = tempdb, súbor 1, PFS stránka). `blocking_session_id` je dôležitý najmä pri zámkoch.

> [!WARNING]
> Pri paralelnom pláne má jeden request viac riadkov (`exec_context_id`) – to je normálne. Je to momentka, nie dlhodobá metrika.

**Oprávnenia:** `VIEW SERVER STATE` (na SQL Server 2022 stačí aj `VIEW SERVER PERFORMANCE STATE`).  
**Režim:** READ ONLY · **Verzia:** SQL Server 2016 – 2022

## Súvisiace recepty

- [Wait stats – na čo server čaká](script.php?id=6&s=wait-stats-na-co-server-caka)