显示有关事务锁定的信息

onstat -k 命令的输出包含关于事务持有的锁定的详细信息。

要找到相关锁定,请将 onstat -x 输出的 userthread 列中的地址与 onstat -k 输出的 owner 列中的地址进行匹配。

图 1 显示了 onstat -x 和相应的 onstat -k 命令的样本输出。onstat -x 输出的 userthread 列中 a335898 值与 onstat -k 输出的两行的 owner 列中的值相匹配

图: onstat -konstat -x 输出

onstat -x

Transactions
address  flags userthread locks   beginlg curlog  logposit   isol    retrys coord
a366018  A---- a334018    0      0       1       0x22b048  COMMIT  0      
a3661f8  A---- a334638    0      0       0       0x0       COMMIT  0      
a3663d8  A---- a334c58    0      0       0       0x0       COMMIT  0      
a3665b8  A---- a335278    0      0       0       0x0       COMMIT  0      
a366798  A---- a335898    2      0       0       0x0       COMMIT  0      
a366d38  A---- a336af8    0      0       0       0x0       COMMIT  0      
  6 active, 128 total, 9 maximum concurrent

onstat -k 

Locks
address  wtlist   owner    lklist   type     tblsnum  rowid    key#/bsiz
a09185c  0        a335898  0        HDR+S    100002   20a         0   
a0918b0  0        a335898  a09185c  HDR+S    100002   204         0   
  2 active, 2000 total, 2048 hash buckets, 0 lock table overflows
图 1 的示例中,用户正在从两个表中选择一行。 该用户持有以下锁定: