DISPLAY THREAD コマンドを使用したスレッドのモニター
DISPLAY THREAD コマンド出力は、ローカルで処理されているスレッド、およびスレッドによって実行された要求、ストアード・プロシージャー、またはユーザー定義関数、および並列タスクを分散するためのスレッドに関する情報を表示します。 また、ARCHIVE LOG コマンドの結果としてシステム静止が有効になっていることを示すこともできます。
DISPLAY THREAD コマンドを使用すると、以下の 1 つ以上のものを使用して、表示する情報のタイプを選択できます。
- アクティブ・スレッド、未確定スレッド、アボート延期スレッド、またはプールされたスレッド
- 接続名が指定されたアドレス・スペースと関連した関連スレッド
- 関連スレッド
- 分散スレッド
- 特定のリモート・ロケーションと関連のある分散スレッド
- リモート・ロケーションとの接続に関する詳細情報
- 特定の作業論理単位 ID (LUWID)
DISPLAY THREAD コマンドが戻す情報は、動的状況を反映しています。 情報が表示されるまでに、状況が変化している場合があります。 さらに、その情報は 1 つのアドレス・スペースでのみ整合性があり、 すべてのアドレス・スペースでは必ずしも整合性はありません。
TYPE、LOCATION、DETAIL、および LUWID キーワードを使用するには、SYSOPR またはそれ以上の権限が必要です。
この出力の解釈方法の詳細については、個々の接続を説明するトピック、およびメッセージ DSNV408I (メッセージ DSNV401I の一部) の説明を参照してください。
未確定スレッドに関する情報の表示
関連未確定スレッドおよびデータベース・アクセス未確定スレッドに関する情報を検索するには、DISPLAY THREAD TYPE(INDOUBT) コマンドを使用します。 このコマンドは、 Db2 が参加者、調整者、またはその両方であるスレッドに関する情報を提供します。
このタスクについて
TYPE(INDOUBT)オプションは、まだ疑義の解決が必要なシステムを特定し、疑義スレッドを回復するために必要なLUWIDを提供します。 コミットのフェーズ 1 を完了して、まだコーディネーターと接続状態になっているスレッドは、準備済み状態であり、DISPLAY THREAD アクティブ・レポートの一部として表示されます。 準備済みスレッドがそのコーディネーターとの接続を失った場合、
このスレッドは未確定 状態に入り、
その時点で参加プログラムとの接続を終了します。 Db2 が終了した時点で準備中または疑わしい状態にあるスレッドは、 Db2 が再起動した後も疑わしい状態のままです。 しかし、参加システムがコーディネータからのコミットまたはロールバックの決定を待機しており、接続がまだアクティブである場合、 Db2 はスレッドをアクティブとみなします。
スレッドが参加プログラムで未確定の場合、前述の説明のように、 コーディネーターで DISPLAY THREAD コマンドを出すことによって、 コミットまたはアボートの決定が コーディネーターで行われたかどうかを判別することができます。 未確定スレッドが、片方のシステムには表示され、もう一方のシステムには表示されない場合は、 後者のシステムは既にそのスレッドをバックアウトしています。この場合、 最初のシステムでも同様にバックアウトする必要があります。
例
- IP アドレスおよび再同期ポート番号を使用した未確定スレッドのリセット
- 例えば、TYPE (INDOUBT) を指定して DISPLAY THREAD コマンドを発行したときに、出力に以下の DSNV406I メッセージが含まれているとします。
DSNV406I -DB2C INDOUBT THREADS - COORDINATOR STATUS RESET URID AUTHID FFFF:10.97.217.50. COMMITTED-H YES 0000000056765A422C57 PAULMCW .1332メッセージから、IPアドレス( FFFF:10.97.217.50 )とコーディネーターの再同期ポート番号(1332)を指定して、疑わしい作業単位をリセットする次のコマンドを発行できます
RESET INDOUBT IPADDR(::FFFF:10.97.217.50..1332) - LUWID またはトークンによる未確定スレッドのリセット
- 2 つの未確定スレッドに関する情報を消去する必要があるとします。 最初のものは DB2NET.LUNSITE0.A11A7D7B2057.0002 のLUWIDであり、2番目のものは442のトークンです。 情報を削除するには、以下のコマンドを使用します
-RESET INDOUBT LUWID(DB2NET.LUNSITE0.A11A7D7B2057.0002,442)
ロケーション別の情報の表示
DISPLAY THREAD コマンドを使用して、特定の位置に関するスレッド情報を表示することができます。
プロシージャー
場所別に情報を表示するには:
例
例えば、THREAD オプションと LOCATION オプションの後にアスタリスク (*) を指定できます。
-DISPLAY THREAD(*) LOCATION(*) DETAILこのコマンドを発行すると、 Db2 は次のようなメッセージを返します
DSNV401I - DISPLAY THREAD REPORT FOLLOWS -
DSNV402I - ACTIVE THREADS -
NAME ST 1 A 2 REQ ID AUTHID PLAN ASID TOKEN
SERVER RA * 2923 DB2BP ADMF001 DISTSERV 0036 20 3
V437-WORKSTATION=ARRAKIS, USERID=ADMF001,
APPLICATION NAME=DB2BP
V436-PGM=NULLID.SQLC27A4, SEC=201, STMNT=210
V445-09707265.01BE.889C28200037=203 ACCESSING DATA FOR
( 1)2002:91E:610:1::5 4
V447-INDEX SESSID A ST TIME
V448-( 1) 446:1300 5 W S2 9802812045091
DISPLAY ACTIVE REPORT COMPLETE
DSN9022I - DSNVDT '-DISPLAY THREAD' NORMAL COMPLETION- 鍵
- 説明
- 1
- ST (状況) 欄には、 ローカル・サイトの接続状況を示す文字が含まれています。 TR は、 分散関連スレッドが確立されていることを示しています。 RA は、分散スレッドが確立されて受信モードに なっていることを示します。 RD は、分散スレッドが別のロケーションに代わってリモート・アクセスを 行い (R)、DCE サービスに関連する操作を実行している (D) ことを示します。 現在、 Db2 は、リモートユーザーの認証にDCEサービスのオプション使用をサポートしています。
- 2
- A(アクティブ)列には、スレッドが Db2 内でアクティブであることを示すアスタリスクが付いています。 Db2 内でスレッドが非アクティブ(アプリケーション内でアクティブまたは待機中)の場合、空白になります。
- 3
- この LUWID は、すべての接続システムの間で固有です。 このスレッドには、 トークン 20 が戻されています (このトークンは、 表示出力内の 2 箇所に示されています)。
- 4
- これはパートナーのロケーションです。 RDBNAME が不明の場合は、ロケーション列には SNA LUNAME または IP アドレスが含まれて います。
- 5
- 接続にTCP/IPが使用されている場合、SESSID列には「 local : remote 」が含まれます。local は、 Db2 TCP/IP ポート番号とリモートは、 パートナーの TCP/IP ポート番号を指定します。
Db2 以外のロケーションの情報の表示
Db2 は、Db2 以外のロケーションからロケーション名を受け取らないため、情報を表示するロケーションの LUNAME または IP アドレスを入力する必要があります。
このタスクについて
LUNAME は、より小記号 (<) とより大記号 (>) で囲まれています。 IP アドレスは、ドット 10 進形式またはコロン 16 進形式でもかまいません。
Db2 は、Db2 以外のリクエスターに関する情報を表示するメッセージで、以下の形式のいずれかを使用します。
- LUNAME 表記
- ドット 10 進形式
- コロン 16 進形式
プロシージャー
Db2 以外のロケーションに関する情報を表示するには、次のようにします。
例
例えば、LUSFOS2 の LUNAME を持つ非 Db2 データベース管理システム (DBMS) に関する情報を表示する場合は、次のコマンドを入力します。
-DISPLAY THREAD (*) LOCATION (<LUSFOS2>)スレッドに関する会話レベルの情報の表示
アクティブ・スレッドの分散情報を表示するときに会話アクティビティーに関する情報を表示するには、LOCATION オプションと DETAIL オプションを指定した DISPLAY THREAD コマンド使用します。
このタスクについて
DETAIL オプションは、未確定スレッドの表示には無効です。
プロシージャー
スレッドに関する会話レベルの情報を表示するには:
-DISPLAY THREAD(*) LOCATION(*) DETAILDb2 次のメッセージを返します。これは、ローカルサイトアプリケーションが で会話が割り当てられるのを待っていること、およびDRDAクライアントがTCP/IPを使用してアクセスする サーバーを示しています。 Db2 Db2
DSNV401I - DISPLAY THREAD REPORT FOLLOWS -
DSNV402I - ACTIVE THREADS -
NAME ST A REQ ID AUTHID PLAN ASID TOKEN
TSO TR * 3 SYSADM SYSADM DSNESPRR 002E 2
V436-PGM=DSNESPRR.DSNESM68, SEC=1, STMNT=116
V444-DB2NET.LUND0.A238216C2FAE=2 ACCESSING DATA AT
( 1)USIBMSTODB22-LUND1
V447--INDEX SESSID A ST TIME
V448--( 1) 0000000000000000 N 1 A1 2 9015816504776
TSO RA * 11 SYSADM SYSADM DSNESPRR 001A 15
V445-STLDRIV.SSLU.A23555366A29=15 ACCESSING DATA FOR
( 1)123.34.101.98
V447--INDEX SESSID A ST TIME
V448--( 1) 446:3171 3 S2 9015611253108
DISPLAY ACTIVE REPORT COMPLETE
DSN9022I - DSNVDT '-DISPLAY THREAD' NORMAL COMPLETION- 鍵
- 説明
- 1
- この行の情報はメッセージ DSNV447I の一部です。 サーバー用の会話A(アクティブ)列は、 Db2 スレッドがハングアップしているかどうか、また処理がネットワークスタック(VTAM®またはTCP/IP)または Db2 で待機しているかどうかを判断するのに役立ちます。 Wの値は、スレッドが Db2 で中断され、イベントが完了したという通知をネットワークから待っていることを示します。 値 N は、会話の制御権がネットワーク・スタックにあることを示します。
- 2
- この行の情報はメッセージ DSNV448I の一部です。 配信サイトの会話ST(ステータス)列のAは、会話が Db2 で割り当てられていることを示します。 2はDRDAアクセスを示します。 状況列に R が示されている場合、会話が要求または応答を受信中であるか、受信するのを待っていることを示します。 サーバーの場合、この列が S になっていると、アプリケーションが要求または応答を送信中であるか、送信する準備中であることを示します。
- 3
- この行の情報はメッセージ DSNV448I の一部です。 SESSID 列は、変更されています。 接続に VTAM を使用している場合、SESSID 列には VTAM セッション識別子が含まれます。 接続にTCP/IPが使用されている場合、SESSID列には「 local : remote 」が含まれます。local は、 Db2 TCP/IP ポート番号とリモートは、 パートナーの TCP/IP ポート番号を指定します。
LUWID によるスレッドの表示
作業論理単位 ID ごとにスレッドを表示するには、オプションの LUWID キーワード (DDF が始動している場合のみ有効) を使用します。 LUWID は、スレッドを作成したサイトによって、そのスレッドに割り当てられます。
このタスクについて
LOCATION 名にアスタリスクを使用できるのと同様に、LUWID キーワードにアスタリスク (*) を使用することもできます。 例えば、コマンド
DISPLAY THREAD TYPE(INDOUBT) LUWID(NET1.*) を発行して、LUWID のネットワーク名が NET1 であるすべての未確定スレッドを表示します。 DISPLAY THREAD TYPE(INDOUBT) LUWID(IBM.NEW*) コマンドは、LUWIDが「 IBM® 」というネットワーク名で、LUNAMEが「NEW」で始まるすべての疑わしいスレッドを表示します
DISPLAY THREAD LUWID コマンドに DETAIL キーワードを指定すると、表示されている各スレッドに接続されているすべての会話の状態が表示され、会話が DRDA アクセスを使用しているかどうかが示されます。
プロシージャー
LUWID によるスレッドを表示するには、次の手順で行います。
-DISPLAY THREAD(*) LUWID (luwid) DETAIL
Db2 は以下のメッセージを戻します。
-DISPLAY THREAD(*) LUWID (luwid) DET
DSNV401I - DISPLAY THREAD REPORT FOLLOWS -
DSNV402I - ACTIVE THREADS -
NAME ST A REQ ID AUTHID PLAN ASID TOKEN
BATCH TR 5 TC3923S0 SYSADM TC392 000D 2
V436-PGM=*.TC3923S0, SEC=1, STMNT=116
V444-DB2NET.LUNSITE0.A11A7D7B2057=2 1 ACCESSING DATA AT
( 1)USIBMSTODB22-LUNSITE1
V447--INDEX SESSID A ST TIME
V448--( 1) 00C3F4228C5A244C S2 2 8929612225354
DISPLAY ACTIVE REPORT COMPLETE
DSN9022I - DSNVDT '-DISPLAY THREAD' NORMAL COMPLETION
- 鍵
- 説明
- 1
- 上記の表示出力では、LUWID に 2 のトークンが割り当てられていることが分かります。 LUWID の長いバージョンの代わりにこのトークンを使用して、指定されたスレッドをキャンセルまたは表示することができます。 以下に例を示します。
-DISPLAY THREAD(*) LUWID(2) DET - 2
- さらに、サービス側のサイトの状況列に値 S2 が含まれています。 Sは、このスレッドがリクエストまたはレスポンスを送信できることを意味し、2は、これがDRDAアクセス会話であることを意味します。
タイプ別のスレッドの表示
タイプ別のスレッドを表示するには、DISPLAY THREAD コマンドを使用します。 例えば、ストアード・プロシージャーまたはユーザー定義関数を実行しているアクティブ・スレッドのみを表示できます。
プロシージャー
スレッドの種類別に表示するには:
-DISPLAY THREAD(*) TYPE(PROC)トランザクションのすべての DBMS のモニター
トランザクションに関与している要求側とサービス側のすべてのデータベース管理システム (DBMS) をモニターするには、DISPLAY THREAD コマンドの DETAIL キーワードを使用します。
このタスクについて
例えば、 で実行されているアプリケーションを監視し、 から情報を要求します。 は、要求された情報を提供するために、 と という2次サーバーと会話を確立する必要があります。 USIBMSTODB21 USIBMSTODB22 USIBMSTODB23 USIBMSTODB24 次の図に、この例を示します。 この例では、ADAはDRDAアクセスを指し、SDAは Db2 プライベートプロトコルアクセスを指します。 USIBMSTODB21 は、USIBMSTODB22 から見てアップストリームであると見なされます。 USIBMSTODB22 は、USIBMSTODB23 から見てアップストリームであると見なされます。 反対に、USIBMSTODB23 と USIBMSTODB22 は、それぞれ USIBMSTODB22 と USIBMSTODB21 からはダウンストリームにあると見なされます。
-DISPLAY THREAD(*) LOC(*) DET
DSNV401I - DISPLAY THREAD REPORT FOLLOWS -
DSNV402I - ACTIVE THREADS -
NAME ST A REQ ID AUTHID PLAN ASID TOKEN
BATCH TR * 6 BKH2C SYSADM YW1019C 0009 2
V436-PGM=BKH2C.BKH2C, SEC=1, STMNT=4
V444-USIBMSY.SSLU.A23555366A29=2 ACCESSING DATA AT
( 1)USIBMSTODB22-SSURLU
V447--INDEX SESSID A ST TIME
V448--( 1) 0000000300000004 N R2 9015611253116
DISPLAY ACTIVE REPORT COMPLETE
11:26:23 DSN9022I - DSNVDT '-DISPLAY THREAD' NORMAL COMPLETIONこの出力は、アプリケーションが USIBMSTODB22 のサーバーにより戻されるデータを待っていることを示しています。-DISPLAY THREAD(*) LOC(*) DET
DSNV401I - DISPLAY THREAD REPORT FOLLOWS -
DSNV402I - ACTIVE THREADS -
NAME ST A REQ ID AUTHID PLAN ASID TOKEN
BATCH RA * 0 BKH2C SYSADM YW1019C 0008 2
V436-PGM=BKH2C.BKH2C, SEC=1, STMNT=4
V445-STLDRIV.SSLU.A23555366A29=2 ACCESSING DATA FOR
( 1)USIBMSTODB21-SSLU
V444-STLDRIV.SSLU.A23555366A29=2 ACCESSING DATA AT
( 2)USIBMSTODB23-OSSLU
( 3)USIBMSTODB24-OSSURLU
V447--INDEX SESSID A ST TIME
V448--( 1) 0000000300000004 S2 9015611253108
V448--( 2) 0000000600000002 S1 9015611253077
V448--( 3) 0000000900000005 N R1 9015611253907
DISPLAY ACTIVE REPORT COMPLETE
11:26:34 DSN9022I - DSNVDT '-DISPLAY THREAD' NORMAL COMPLETIONこの出力は、USIBMSTODB22 のサーバーが、USIBMSTODB24 の 2 次サーバーによりデータが戻されるのを待っていることを示しています。-DISPLAY THREAD(*) LOC(*) DET
DSNV401I - DISPLAY THREAD REPORT FOLLOWS -
DSNV402I - ACTIVE THREADS -
NAME ST A REQ ID AUTHID PLAN ASID TOKEN
BATCH RA * 2 BKH2C SYSADM YW1019C 0006 1
V445-STLDRIV.SSLU.A23555366A29=1 ACCESSING DATA FOR
( 1)USIBMSTODB22-SSURLU
V447--INDEX SESSID A ST TIME
V448--( 1) 0000000600000002 W R1 9015611252369
DISPLAY ACTIVE REPORT COMPLETE
11:27:25 DSN9022I - DSNVDT '-DISPLAY THREAD' NORMAL COMPLETIONこの出力は、USIBMSTODB23 上の 2 次サーバーが現在アクティブでないことを示しています。-DISPLAY THREAD(*) LOC(*) DET
DSNV401I - DISPLAY THREAD REPORT FOLLOWS -
DSNV402I - ACTIVE THREADS -
NAME ST A REQ ID AUTHID PLAN ASID TOKEN
BATCH RA * 2 BKH2C SYSADM YW1019C 0006 1
V436-PGM=*.BKH2C, SEC=1, STMNT=1
V445-STLDRIV.SSLU.A23555366A29=1 ACCESSING DATA FOR
( 1)USIBMSTODB22-SSURLU
V447--INDEX SESSID A ST TIME
V448--( 1) 0000000900000005 S1 9015611253075
DISPLAY ACTIVE REPORT COMPLETE
11:27:32 DSN9022I - DSNVDT '-DISPLAY THREAD' NORMAL COMPLETIONこの出力は、USIBMSTODB24 上の 2 次サーバーが現在アクティブであることを示しています。会話状況が長時間変化しない場合があります。 これは、会話が停止している場合もあり、処理に時間がかかっている場合もあります。 会話が停止しているかどうかを判別するには、DISPLAY THREAD コマンドを再び出して、新しいタイム・スタンプと直前の出力メッセージからのタイム・スタンプを比較してください。 タイム・スタンプが変化しているのに状況が変化していない場合、ジョブはまだ処理中です。 分散ジョブを終了する必要がある場合、例えば、ハングアップしてデータベースロックを長時間保持している場合、スレッドが Db2 にある場合(アクティブまたはサスペンドの状態にかかわらず)、CANCEL DDF THREADコマンドを使用できます。 スレッドが VTAM 内にある場合は、VARY NET TERM コマンドを使用できます。
グラフィックのアクセシビリティー対応についての詳細な説明
詳細な説明の開始。
この図は、4 つの要求 DBMS とサービス提供 DBMS を表しています。 これらの DBMS の名前は、USIBMSTODB21、USIBMSTODB22、USIBMSTODB23、および USIBMSTODB24 です。
USIBMSTODB21 DRDA 経由で に接続します。 USIBMSTODB22 USIBMSTODB22 は、 Db2 のプライベートプロトコルアクセスを通じて、 USIBMSTODB23 と USIBMSTODB24 に接続します。 USIBMSTODB22 は、USIBMSTODB23 と USIBMSTODB24 からの情報を使用して、USIBMSTODB21 からの要求に応答します。
詳細な説明の終了。