How can I determine the instance's lock table size? My instance is
configured for an initial one million locks, but my users are running
PeopleSoft processes which lead to lock table overflows. I can easily
see in the instance message log that more and more shared memory
segments are being allocated -- along with the lock table overflow
messages -- but there 's no indication of how many locks have been
generated. Strangely, the ovlocks column of onstat -p is zero. How
can I find how large the table has enhugenated to? The users, of
course, don't want to modify the application to efficiently use the
resources at hand ("But it works with (nearly identical) database B --
why doesn't it work with database A?").
Using IDS 11.50.FC4 on HPUX 11.23.
↪ replying to red_valsen
On Sep 25, 6:42 pm, red_valsen <red_val...@yahoo.com> wrote:
> How can I determine the instance's lock table size? My instance is
> configured for an initial one million locks, but my users are running
> PeopleSoft processes which lead to lock table overflows. I can easily
> see in the instance message log that more and more shared memory
> segments are being allocated -- along with the lock table overflow
> messages -- but there 's no indication of how many locks have been
> generated. Strangely, the ovlocks column of onstat -p is zero. How
> can I find how large the table has enhugenated to? The users, of
> course, don't want to modify the application to efficiently use the
> resources at hand ("But it works with (nearly identical) database B --
> why doesn't it work with database A?").
>
> Using IDS 11.50.FC4 on HPUX 11.23.
"SELECT sh_maxlocks FROM sysshmvals" in the sysmaster database.
sh_maxlocks contains initially the LOCKS value from $ONCONFIG, and is
increased when IDS dynamically allocate more memory to contain the
locks. sh_maxlocks is not a highwater mark for locks, but the actual
maximum of possible concurrent locks.