July 27, 2009 at 8:23 am
Trying to get to the bottom of a deadlock i've been having, i've slightly reworked the procedure which removes a deadlock between a non-clustered index and primary key on a table.
Running this in a load test (using visual studio 2008 database unit tests / load test framework) it was previously reporting 28 failures due to deadlocks in a run of 265 tests.
Following the rework this reduces down to 2 failures from a total of 776 tests, however these failures have slightly different wording.
Before:
System.Data.SqlClient.SqlException: Transaction (Process ID 73) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction..
After:
System.Data.SqlClient.SqlException: Transaction (Process ID 74) was deadlocked on lock | generic waitable object resources with another process and has been chosen as the deadlock victim. Rerun the transaction..
From the SQL log I can see the following:
resource-list
keylock hobtid=72057596855517184 dbid=12 objectname=XXX.dbo.XXXXX indexname=XXXXXXXXXXXXXXXXXX id=lockb8a42c0 mode=X associatedObjectId=72057596855517184
owner-list
owner id=process8da898 mode=X
waiter-list
waiter id=process9691f8 mode=S requestType=wait
resourceWait
owner-list
owner id=process9691f8
waiter-list
waiter id=process8da898
What is this resourceWait resource lock thingymabob precisely?
Cheers
Viewing post 1 (of 1 total)
You must be logged in to reply to this topic. Login to reply