アプリケーションによって獲得される資源の占有情報は、rdblkinfコマンドを使用して収集します。rdblkinfコマンドの使用例と表示例を以下に示します。
デッドロック情報を表示した場合(dオプション、sオプションおよびeオプション)
$ rdblkinf -d -s -e RDBII rdblkinf DATE:2008/05/21 TIME:11/35/50 (1) (2) (3) (4) (5) (6) (7) (8) (9) Time Uid Pid Sid Type Name Unit DSI-name System 10:11:12 I4874 23045 2 SQL APL01/CONNECT1 DSI DB0001.DSI0001 RDBSYS1 K1597 13254 1 SQL APL05/CONNECT5 DSI DB0001.DSI0001 RDBSYS2
(1) デッドロック発生時刻
(2) ログイン名
(3) プロセスID (トランザクションモニタ配下のアプリケーションの場合は、 現在動作中のクライアントプロセスIDが表示されます。)
(4) セションID (eオプションを指定した場合だけ表示されます。) (マルチスレッド環境で動作しているアプリケーション以外の場合は “-----”が表示されます。)
(5) クライアントプロセス種別 SQL : システム内通信のアプリケーション SQL-XA : トランザクションモニタ配下のアプリケーション TCP/IP : リモートアクセスのアプリケーション RDA-SV : RDA-SV接続のアプリケーション RDBCMD : RDBコマンド DAEMON : RDBシステムデーモン ODOS : ODOS連携のODBCアプリケーション
(6) モジュール名 システム内通信のアプリケーション: アプリケーションロードモジュール名/コネクション名 (アプリケーションロードモジュール名が15バイトを超える場合は、 先頭の15バイトだけが出力されます。) トランザクションモニタ配下のアプリケーション: データベース名/コネクション名 (トランザクションモニタ配下のアプリケーションのデータベース名/ コネクション名は、OPEN-INFO文字列に指定された値が表示されます。) リモートアクセスのアプリケーション: 接続端末のIPアドレス/コネクション名 RDA-SV接続のアプリケーション: 接続端末のIPアドレス/コネクション名 RDBコマンド: RDBコマンド名 ODOS連携のODBCアプリケーション: 接続端末のIPアドレス/データソース名、 またはアプリケーションのロードモジュール名/データソース名
(7) 階層 DSI : DSI PAGE : ページ ROW : 行 COMMIT : コミット処理中の場合 (トランザクションの排他単位だけでなく、内部での一時的な排他単位が 表示されることもあるため、以下のパラメタに指定した値とは異なる場合があります。 ・動作環境ファイルのR_LOCKパラメタ ・ctuneparamオプションのCLI_R_LOCKパラメタ ・ODOSのオプション値のCLI_R_LOCKパラメタ ・tuneparamキーワードのR_LOCKパラメタ 本パラメタが有効に動作しているかどうかを確認する場合、 アクセスプランを参照してください。)
(8) 資源名 (データベース名.DSI名) ((7)階層がCOMMITと表示されている場合、“------.------”で表示されます。)
(9) クライアントプロセスがコネクトしたRDBシステム名
待ち状態になっている資源の情報を表示した場合(lオプション、sオプションおよびeオプション)
$ rdblkinf -l -s -e RDBII rdblkinf DATE:2008/05/21 TIME:11/35/50 DSI-name : DB0001.DSI0001 (1) (2) (3) (4) (5) (6) (7) (8) (9) (10) Status Uid Pid Sid Type Name Unit Purpose System WAIT I4874 23045 2 SQL APL01/CONNECT1 DSI REFER RDBSYS1 ACTIVE I4874 13254 1 SQL APL05/CONNECT5 DSI UPDATE RDBSYS2
(1) 資源名(データベース名.DSI名)
(2) 状態 ACTIVE : 動作中 WAIT : 待ち状態
(3) ログイン名 (トランザクション占有以外の場合は、“-------”で表示されます。)
(4) プロセスID (トランザクションモニタ配下のアプリケーションの場合は、 現在動作中のクライアントプロセスIDが表示されます。)
(5) セションID (eオプションを指定した場合だけ表示されます。) (マルチスレッド環境で動作しているアプリケーション以外の場合は “-----”が表示されます。)
(6) クライアントプロセス種別 SQL : システム内通信のアプリケーション SQL-XA : トランザクションモニタ配下のアプリケーション TCP/IP : リモートアクセスのアプリケーション RDA-SV : RDA-SV接続のアプリケーション RDBCMD : RDBコマンド DAEMON : RDBシステムデーモン ODOS : ODOS連携のODBCアプリケーション
(7) モジュール名 システム内通信のアプリケーション : アプリケーションロードモジュール名/コネクション名 (アプリケーションロードモジュール名が15バイトを超える場合は、 先頭の15バイトだけが出力されます。) トランザクションモニタ配下のアプリケーション : データベース名/コネクション名 (トランザクションモニタ配下のアプリケーションのデータベース名/コネクション名は、 OPEN-INFO文字列に指定された値が表示されます。) リモートアクセスのアプリケーション : 接続端末のIPアドレス/コネクション名 RDA-SV接続のアプリケーション : 接続端末のIPアドレス/コネクション名 RDBコマンド : RDBコマンド名 ODOS連携のODBCアプリケーション : 接続端末のIPアドレス/データソース名、 またはアプリケーションのロードモジュール名/データソース名
(8) 階層 DSI : DSI PAGE : ページ ROW : 行 COMMIT : コミット処理中の場合 (トランザクションの排他単位だけでなく、内部での一時的な排他単位が 表示されることもあるため、以下のパラメタに指定した値とは異なる場合があります。 ・動作環境ファイルのR_LOCKパラメタ ・ctuneparamオプションのCLI_R_LOCKパラメタ ・ODOSのオプション値のCLI_R_LOCKパラメタ ・tuneparamキーワードのR_LOCKパラメタ 本パラメタが有効に動作しているかどうかを確認する場合、 アクセスプランを参照してください。)
(9) 占有目的 REFER : 参照 UPDATE : 更新 REFER|UPDATE : 参照更新 (トランザクション占有以外の場合は,“-------”で表示されます。)
(10) クライアントプロセスがコネクトしたRDBシステム名
参照
rdblkinfコマンドの指定方法の詳細については、“コマンドリファレンス”を参照してください。