FIX: Error 1203 If Deadlock Occurs During Concurrent ORDER BY DESC

ID: Q175143


The information in this article applies to:

BUG #: 17334 (6.5)

SYMPTOMS

If deadlocks occur during concurrent ORDER BY DESC queries, a 1203 error may occur and you receive the error message:

Caller of lock manager is incorrectly trying to unlock an unlocked object. spid=%d locktype=%d dbid=%d lockid=%Id

This may eventually destabilize the server and result in stuck locks. After the error 1203, you may see this as a chain of blocked spids that does not clear up even after you kill the spid at the head of the chain.

This is a regression starting with SQL Server version 6.5 Service Pack 2. The problem is not specific to multiprocessor computers.


WORKAROUND

Use standard techniques to reduce locking contention and deadlocks. This can include shortening transaction path length, using lower transaction isolation levels, eliminating extraneous indexes, or insuring that transactions acquire locks in the same order. Reducing usage of ORDER BY DESC queries may also help.


STATUS

Microsoft has confirmed this to be a problem in Microsoft SQL Server version 6.5 Service Pack 2. This problem was corrected in the latest Microsoft SQL Server 6.5 U.S. Service Pack. For information on obtaining the service pack, query on the following word in the Microsoft Knowledge Base (without the spaces):


   S E R V P A C K 

Additional query words: sp sp2


Keywords          : kberrmsg kbusage SSrvGen kbbug6.50.sp2 kbfix6.50.sp4 
Version           : Windows:6.5
Platform          : WINDOWS 
Issue type        : kbbug 

Last Reviewed: April 16, 1999