(Republishing, or using this info in a commercial product/website, is prohibited without permission. All other uses are permitted. If in doubt, please ask.)
Description:
This wait type is when the background system health monitor thread is waiting between checking whether to run the sp_server_diagnostics procedure. This was added for SQL Server 2012 to aid with automatic detection of failures to allow automatic failover with availability groups. You can read more about it:
(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 736 in 2012 and 754 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 wait type be a noticeable contention point and it can be safely ignored.
This wait type is one that I usually filter out as a benign wait when doing wait statistics analysis.
Known occurrences in SQL Server (list number matches call stack list):
- Waiting between checking whether to run sp_server_diagnostics_sleep
Abbreviated call stacks (list number matches known occurrences list):
- SOS_Task::PostWait+90
SOS_Task::Sleep+ea
DiagnoseComponentMgr::Execute+f7f
SystemHealthMonitor+12b
SystemHealthMonitorThread+94
SOS_Task::Param::Execute+21e
SOS_Scheduler::RunTask+a8