4、在会话1,执行select语句,此时select被阻塞
gyj@OCM> select * from gyj_test where id=1;
5、在gdb设断点,用等待事件的函数,并运行
(gdb) b kslwtbctx Breakpoint 1 at 0x8f9a5c2 (gdb) c Continuing.6、查等待事件kslwtbctx函数的第一个参数,用命令info all-register显示寄存器
(gdb) info all-register rax 0x62657100 1650815232 rbx 0x15c 348 rcx 0x0 0 rdx 0x1 1 rsi 0x7a59 31321 rdi 0x7fff1c576d40 140733668879680 rbp 0x7fff1c576ce0 0x7fff1c576ce0 rsp 0x7fff1c576ce0 0x7fff1c576ce0 r8 0x2 2 r9 0x25 37 r10 0x7 7 r11 0x0 0 r12 0x0 0 r13 0xbb0c348 196133704 r14 0xbb09d40 196123968 r15 0x1 1 rip 0x8f9a5c2 0x8f9a5c2eflags 0x246 [ PF ZF IF ] cs 0x33 51 ss 0x2b 43 ds 0x0 0 es 0x0 0 fs 0x0 0 gs 0x0 0 st0 0 (raw 0x00000000000000000000) ---Type to continue, or q to quit--- st1 0 (raw 0x00000000000000000000) st2 0 (raw 0x00000000000000000000) st3 0 (raw 0x00000000000000000000) st4 0 (raw 0x00000000000000000000) st5 0 (raw 0x00000000000000000000) st6 73280 (raw 0x400f8f20000000000000) st7 73280 (raw 0x400f8f20000000000000) fctrl 0x27f 639 fstat 0x0 0 ftag 0xffff 65535 fiseg 0x0 0 fioff 0x9394e95 154750613 foseg 0x7fff 32767 fooff 0x1c573f50 475479888 fop 0x0 0
8、用x/32命令查内存中32个字节
gdb) x/32 0x7fff1c576d40 0x7fff1c576d40: 0x1c577a59 0x00007fff 0x1c576e50 0x00007fff 0x7fff1c576d50: 0x1c576ee0 0x00007fff 0x0918adf2 0x00000000 0x7fff1c576d60: 0x00000000 0x00000000 0x00000000 0x00000000 0x7fff1c576d70: 0x00000000 0x00000001 0x00000000 0x00000000 0x7fff1c576d80: 0x002adb17 0x00000000 0x00000000 0x00000000 0x7fff1c576d90: 0x00000000 0x00000000 0x00000001 0x00000000 0x7fff1c576da0: 0x09b958cc 0x00000000 0x0000015c 0x00000000 0x7fff1c576db0: 0x7fffffff 0x00000000 0x62657100 0x00000000
9、找到0x0000015c,通过此等待事件号,找等待事件
gyj@OCM> select name from v$event_name where event# in(select to_number('15c','xxxxxxxxxxxxxx') from dual);
NAME
----------------------------------------------------------------
SQL*Net message to client
10、重复第5、6、7、8、9步(注用从第5步的c命令开始)
(gdb) c Continuing. Breakpoint 1, 0x0000000008f9a5c2 in kslwtbctx () (gdb) info all-register rax 0x0 0 rbx 0x2000 8192 rcx 0x0 0 rdx 0x0 0 rsi 0x0 0 rdi 0x7fff1c574c38 140733668871224 rbp 0x7fff1c574970 0x7fff1c574970 rsp 0x7fff1c574970 0x7fff1c574970 r8 0x5bbb295 96187029 r9 0x2f8b5f0 49853936 r10 0x52da848e 1390052494 r11 0x2b0b9057e7a8 47328666314664 r12 0x99837da8 2575531432 r13 0x0 0 r14 0x0 0 r15 0x99437498 2571334808 rip 0x8f9a5c2 0x8f9a5c2eflags 0x246 [ PF ZF IF ] cs 0x33 51 ss 0x2b 43 ds 0x0 0 es 0x0 0 fs 0x0 0 gs 0x0 0 st0 0 (raw 0x00000000000000000000) ---Type to continue