Progress shared lock issue

vickey

New Member
Hi

Can anyone let me know how to identify the duration of the shared lock held by a unix process. Using promon I have identified the process id which is having the record locked in shared status. I require this information to identify the program which might be causing a transaction leak.

Thanks
GV
 
I'd be curious to know what the relationship between duration of the lock and identifying the responsible program is.

In any event ProTop is your friend. The "Record Locks" display shows duration:
Code:
Record Locks
  Usr Name              Recid Duration Table                Type    Chain Flags
----- ------------ ---------- -------- -------------------- ---- -------- -----
  393 tom            25830872 00:00:00 order                REC      1206 S
  929 jami           25830873 00:00:00 order                REC      1207 S
 1401 julia          25830874 00:00:00 order                REC      1208 S
 1414 peter          25830871 00:00:00 order                REC      1205 S
 4153 emily             61829 00:00:00 holiday              REC      2368 S

although it can only show duration from the point where it started looking because that information isn't actually provided by the db engine. And you want to be very careful about running it on a busy production system with a large lock table -- it could impact performance to do so.

If you are running 10.1C there is a new VST which allows you to discover the 4GL call stack of a process. That would probably be more useful. I haven't added that to ProTop yet but I might get to it in the next couple of weeks...
 
Thanks for the information.

The reason i was trying to find the lock duration is if I get to know the time from which the record is in shared lock i can then look for the web agent ( The process which had the record in shared lock ) log file to identify which program was called during that time.
 
Back
Top