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.