XTP_PREEMPTIVE_TASK Wait Type in SQL Server

Part of the SQL Server Wait Types Library, every wait type explained.Related deep dive: WRITELOG Wait TypeRelated pillar: Performance & Troubleshooting

XTP_PREEMPTIVE_TASK appears to be a generic wait for background worker threads involved in In-Memory OLTP processing, running preemptively, so the thread stays under Windows control (state RUNNING) until its work completes. Documentation labels it internal use only.

It is the XTP family’s catch-all background wait.

Is It a Problem?

Normally no; it accumulates as XTP background machinery hums, and it is filtered as benign. One anecdotal edge case is worth recording: this wait has been reported becoming a bottleneck in connection with the Telemetry Extended Events session (the usage-data session Microsoft ships enabled). Environments that hit unexplained prominence of this wait have found relief examining or disabling that session per Microsoft guidance.

Outside that, there is nothing to act on.

Common Causes

  • Normal In-Memory OLTP background processing on databases with memory-optimized objects.
  • The Telemetry XE session interaction, in the reported edge case.

What To Do

  1. Filter it in routine analysis.
  2. If it inexplicably ranks high, check the state of the telemetry-related XE sessions and current Microsoft guidance on them.
  3. Investigate XTP health, when needed, through the feature’s own DMVs rather than this wait.

How To See It

Rank waits with Get-WaitStatistics, where it is filtered as XTP background noise.


Where To Go Next

XTP_PREEMPTIVE_TASK is background noise on a healthy instance. If you are chasing a real problem, start with the waits that actually cost you time.

Comments

Leave a Reply

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