Hi all,
I just got a third encounter of the lock's kind - I think.
I'm not at work for the next week, but there is this tiny voice in my
head asking for an answer.
We're running IDS 10.00.FC8 on Solaris Sparc. One of our applications
always got trapped on locks even when setting "lock mode to wait"
without any timeout. The table is fragmented by round robin and has
lock mode set to row.
So I tried to track the problem. First checking "onstat -u". Here's my
beastie waiting for the lock 'til the world is coming to an end:
address flags sessid user tty wait
tout locks nreads nwrites
266350ef8 L--PR-- 654369 intsys - 10de23550
-1 2 152501 10
Now take a look at "onstat -k" and find the "wait userthread". Got it:
address wtlist owner lklist
type tblsnum rowid key#/bsiz
10de23550 266350ef8 (22ce57438) 10bc2f9f8
HDR+X 10000f2 328cf03 0
Grep the owner of the lock in "onstat -x":
address flags userthread locks beginlg curlog
logposit isol retrys coord
22ce57438 -L--G 0 4 0 0 0x0
DIRTY 0
... and identify the session_id from userthread.
No way - there is this 0 looking at me and waiting for an explanation.
Am I missing the point or did our instance catch some internal flu?
If this is an internal function - shouldn't the lock be released at
least after some hours;-)
Can someone enlighten me?
And now for something completely different:
"onstat -k" offers a rowid - but the table is fragmented by round
robin so I can't do a select using this value. Is there any workaround
to find the locked column?
Thanks
Axel
Superboer - 25 Apr 2008 07:58 GMT
> Grep the owner of the lock in "onstat -x":
Nope onstat -u |grep owner.
hmmm not really, with oncheck you can dump the pages, however it will
try to place a shared lock on
it.....
Superboer
Axel Sander schreef:
> Hi all,
>
[quoted text clipped - 42 lines]
> Thanks
> Axel