使用 onstat -g bth 命令显示阻塞和正在等待线程之间的依赖关系。使用 onstat -g BTH 命令显示阻塞线程的会话和堆信息。
图: onstat -g bth 命令输出
This command attempts to identify any blocking threads. Highest level blocker(s) tid name session 48 sqlexec 26 Threads waiting on resources tid name blocking resource blocker 49 sqlexec MGM 48 13 readahead_0 Condition (ReadAhead) - 50 sqlexec Lock (0x4411e578) 49 51 sqlexec Lock (0x4411e578) 49 52 sqlexec Lock (0x4411e578) 49 53 sqlexec Lock (0x4411e578) 49 57 bf_priosweep() Condition (bp_cond) - 58 scan_1.0 Condition (await_MC1) - 59 scan_1.0 Condition (await_MC1) - Run 'onstat -g BTH' for more info on blockers.
Stack for thread: 48 sqlexec base: 0x00000000461a3000 len: 69632 pc: 0x00000000017b32c3 tos: 0x00000000461b2e30 state: ready vp: 1 0x00000000017b32c3 (oninit) yield_processor_svp 0x00000000017bca6c (oninit) mt_wait 0x00000000019d4e5c (oninit) net_buf_get 0x00000000019585bf (oninit) recvsocket 0x00000000019d1759 (oninit) tlRecv 0x00000000019ce62d (oninit) slSQIrecv 0x00000000019c43ed (oninit) pfRecv 0x00000000019b2580 (oninit) asfRecv 0x000000000193db2a (oninit) ASF_Call 0x0000000000c855dd (oninit) asf_recv 0x0000000000c8573c (oninit) _iread 0x0000000000c835cc (oninit) _igetint 0x0000000000c72a9e (oninit) sqmain 0x000000000194bb38 (oninit) listen_verify 0x000000000194ab8a (oninit) spawn_thread 0x0000000001817de3 (oninit) th_init_initgls 0x00000000017d3135 (oninit) startup
This command attempts to identify any blocking threads. Highest level blocker(s) tid name session 48 sqlexec 26 session effective #RSAM total used dynamic id user user tty pid hostname threads memory memory explain 26 gbasedbt - 45 31041 mors 2 212992 186568 off Program : /work3/JC/VIEWS/jc_dct_phase2.view/.s/00055/80003fd351f804d3dbaccess tid name rstcb flags curstk status 48 sqlexec 448bc5e8 ---P--- 4560 ready- 58 scan_1.0 448bb478 Y------ 896 cond wait await_MC1 - Memory pools count 2 name class addr totalsize freesize #allocfrag #freefrag 26 V 45fcc040 208896 25616 189 16 26*O0 V 462ad040 4096 808 1 1 name free used name free used overhead 0 6576 mtmisc 0 72 resident 0 72 scb 0 240 opentable 0 7608 filetable 0 1376 log 0 33072 temprec 0 17744 blob 0 856 keys 0 176 ralloc 0 55344 gentcb 0 2240 ostcb 0 2992 sqscb 0 21280 sql 0 11880 xchg_desc 0 1528 xchg_port 0 1144 xchg_packet 0 440 xchg_group 0 104 xchg_priv 0 336 hashfiletab 0 1144 osenv 0 2520 sqtcb 0 15872 fragman 0 1024 shmblklist 0 416 sqlj 0 72 rsam_seqscan 0 368 sqscb info scb sqscb optofc pdqpriority optcompind directives 4499c1c0 461c1028 0 100 2 1 Sess SQL Current Iso Lock SQL ISAM F.E. Id Stmt type Database Lvl Mode ERR ERR Vers Explain 26 SELECT jc CR Not Wait 0 0 9.24 Off Current statement name : unlcur Current SQL statement (5) : select * from systables,syscolumns,sysfragments Last parsed SQL statement : select * from systables,syscolumns,sysfragments
该会话信息段包含的信息与 onstat -g ses 命令输出的信息相同。请参阅 onstat -g ses 命令:打印与会话有关的信息。
剩下的信息显示了该线程的堆信息。