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 Problem?

No; it has not been a contention point. Parallel-heavy sessions generate proportionally more of it, and even then the amounts stay trivial. Filter it.

The DMV it serves is worth more attention than the wait: session-scoped wait stats are excellent for targeted troubleshooting (“what did this session wait on?”) without the noise of instance-wide cumulative numbers, and they reset per session, sidestepping the since-restart problem.

Common Causes

  • Parallel query tasks updating their session’s wait statistics concurrently.

What To Do

  1. Filter it out of wait analysis.
  2. Use sys.dm_exec_session_wait_stats deliberately in troubleshooting; it is the per-session lens this bookkeeping pays for.

How To See It

Rank waits with Get-WaitStatistics; expect traces proportional to parallel activity.


Part of the SQL Server Wait Types Library.
Related deep dive: CXPACKET and CXCONSUMER Wait Types.

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *