Deadlocks and Lock Contention with Interbase

Chris.Sharman@ccagroup.co.uk Chris.Sharman@ccagroup.co.uk
Fri, 06 Feb 1998 09:21:13 GMT


>With the help of an excellent program written by a Digital employee, and a few
>custom modifications of our own, we've been able to react to the lock
>contention in an almost-timely fashion.  The shortcoming of this program,
>however, is that it can't determine the Interbase resource that is being locked
>in order to lead us to the culprit.  So, we turn to Cognos.

>Cognos has an unsupported utility called SBLOCKS which will display all locks
>in a given Interbase DB.  The problem with this utility is that our DB has an
>enormous amount of locks in it, usually 30K-35K, and the report it generates is
>over 128K lines long, and takes up to five minutes to generate.  The problem is
>that the SBLOCKS utility displays all locks, not just the ones in contention. 
>I've asked Cognos' tech support if it would be possible to release the source
>for SBLOCKS, in order for us to modify it like the one from Digital to just
>display those locks in contention, but was told that they wouldn't release it. 
>Back to square one.

>Does anyone have a method for tracking down problems with lock contention and
>deadlocks for PH and Interbase?  We are really getting hammered by our users
>because of the "downtime" (eg: orders not being scheduled, material allocations
>not completing, waiting at the keyboard, etc.) caused by the lock problems.

>Any help or suggestions are GREATLY appreciated!   Thanks.

I've no experience of Interbase. If the culprit holds the lock (rather than a
server process holding it on it's behalf) it should be fairly straightforward
to get from the lock id to the PID.

I've got a tool I've been playing around with to identify the blocking process
for an RMS lock. It's written in Pascal, although not very polished. You're
welcome to a copy (.PAS or .OBJ). Your Digital program sounds interesting too.

Another option of dubious legality would be to use the VAX disassembler on a
VAX copy of SBLOCKS to discover how it works: the disassembler is available
from DECUS and probably various other sites.
______________________________________________________________________
Chris Sharman			Chris.Sharman@CCAgroup.co.uk
CCA Stationery Ltd, Eastway, Fulwood, Preston, Lancashire, PR2 9WS.