Take the 2-minute tour ×
Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. It's 100% free, no registration required.

I haven't seen the SLEEP_TASK wait type before, and today I seem to be getting a ton of them.

I'm not the official DBA, just a SQL Server developer who knows some DBA stuff. We upgraded our servers last weekend to 10.52.2500.0 - R2SP1 I think.

All the info I could find online indicates that SLEEP_TASK means the server is waiting on some sort of internal process to complete. I don't have any blocking or any background processes like checkpoints or ghost cleanup running, so I'm a bit stumped.

Has anyone seen this wait type before, and if so can you give me an idea of what is causing it?

share|improve this question
3  
I remember it being mentioned in Webcast 3 here but that Webcast is painful to watch as (despite containing some interesting content) the presenter goes off on some irrelevant tangents about the board of SQLPass frequently. –  Martin Smith Jan 27 '12 at 17:06
    
Are you getting them on any specific types of queries / jobs or on pretty much everything? Only thing that comes to mind is to check that your server isn't limiting worker threads or something bizarre like that. –  Brandon Jan 27 '12 at 17:16
3  
I also refuse to use any of their material given events earlier this year. SLEEP_TASK is a general wait, used for all sorts of things where a more specific wait type doesn't exist, but it does crop up with Hashing operations (join/aggregate) that spill to tempdb, and occasionally at an exchange (Parallelism operator) where a consumer is waiting on something that isn't a normal CXPACKET or EXECSYNC wait. I would check for Hash spills first. –  Paul White Jan 27 '12 at 17:18
    
@SQLKiwi - Thanks, make that an answer and I'll accept it. It's more info than I could find pretty much anywhere! –  JNK Jan 27 '12 at 18:12
    
@JNK - Did you find out what is causing it in your case? Any hash warnings showing up? –  Martin Smith Jan 27 '12 at 18:15

1 Answer 1

up vote 18 down vote accepted

SLEEP_TASK is a general wait, used for all sorts of things where a more specific wait type doesn't exist, but it does crop up with hashing operations (join/aggregate) that spill to tempdb, and occasionally at an exchange (Parallelism operator) where a consumer is waiting on something that isn't a normal CXPACKET or EXECSYNC wait. I would check for Hash spills first.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.