We have some blocking going on in our database and when I run sp_who2, in the BlkBy field, I see "-2" for two of the rows. What does this mean? Running SQL Server 2008 R2

enter image description here


I see "-2" for two of the rows. What does this mean?

It means you have an open DTC transaction managed by an external ITransaction interface but no Sessions currently using it.

you have to use KILL UOW where UOW = UnitOfWork associated with that transaction instead of the session id.

---- in text mode run below query

select 'kill ' , req_transactionUOW
from master..syslockinfo
where req_spid = -2
  • I am not sure why the individual just deleted the answer but according to Paul Randal's post: SPID -2 is an orphaned DTC transaction – Shawn Melton Jul 30 '14 at 20:38
  • @ShawnMelton If you look at the CSS post by Bob Dorr, he explains why it is not called Orphan. Especially A -2 is not Orphaned it means there are NO ENLISTED SESSIONS on the SQL Server but the transaction is active yet. – Kin Shah Jul 30 '14 at 20:41
  • 1
    Thanks for re-posting the link to Paul Randal's post. Kin's suggested solution worked for me. Thanks – Rick S Jul 30 '14 at 20:46
  • NO ENLISTED SESSIONS, or a transaction that is no longer tied to a session (orphaned)...just terminology to me. It is just as easy to explain it as being orphaned. – Shawn Melton Jul 30 '14 at 20:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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