MON_GET_APPL_LOCKWAIT 表関数は、(現在のデータベースに接続されている) 各アプリケーションのエージェントが取得を待機しているすべてのロックについての情報を戻します。
ロックについての情報を取得するには MON_GET_APPL_LOCKWAIT、MON_FORMAT_LOCK_NAME、および MON_GET_LOCKS 表関数を使用してください。SNAPLOCKWAIT 管理ビューと SNAP_GET_LOCKWAIT 表関数、および SNAPLOCK 管理ビューと SNAP_GET_LOCK 表関数は バージョン 9.7 フィックスパック 1 で非推奨になりました。
スキーマは SYSPROC です。
SELECT COORD_PARTITION_NUM,
APPLICATION_HANDLE
FROM TABLE(WLM_GET_SERVICE_CLASS_WORKLOAD_OCCURRENCES_V97('','',-2))
WHERE SESSION_USER = 'USER1'
COORD_PARTITION_NUM APPLICATION_HANDLE
------------------------------- ----------------------------
2 131130
1 record(s) selected.
SELECT SUBSTR(CHAR(DBPARTITIONNUM),1,3) AS DBPART,
SUBSTR(CHAR(APPLICATION_HANDLE),1,7) AS APP_ID,
SUBSTR(CHAR(WORKLOAD_OCCURRENCE_ID),1,7) AS WLO_ID,
SUBSTR(CHAR(AGENT_TID),1,7) AS AGENT_ID,
SUBSTR(CHAR(AGENT_TYPE),1,12) AS AGENT_TYPE,
SUBSTR(AGENT_STATE,1, 8) AS STATE,
SUBSTR(EVENT_TYPE,1, 8) AS EV_TYPE,
SUBSTR(EVENT_OBJECT,1,12) AS EV_OBJECT
FROM TABLE(WLM_GET_SERVICE_CLASS_AGENTS_V97('','',131130,-2))
ORDER BY AGENT_TYPE, DBPART
DBPART APP_ID WLO_ID AGENT_ID AGENT_TYPE STATE EV_TYPE EV_OBJECT
------ ------- ------- --------- ----------- ------ -------- ----------
2 131130 1 3110 COORDINATOR ACTIVE WAIT REQUEST
0 131130 1 7054 PDBSUBAGENT ACTIVE ACQUIRE LOCK
1 131130 1 5709 PDBSUBAGENT ACTIVE ACQUIRE LOCK
2 131130 1 5960 PDBSUBAGENT ACTIVE ACQUIRE LOCK
4 record(s) selected.
タイプ LOCK のイベント・オブジェクトに対するタイプ ACQUIRE のイベントはロック待機シナリオを示しているため、待機の対象となっているオブジェクトは何か、および何がそのロックを保持しているかを調べる必要があります。
SELECT lock_name,
hld_member AS member,
hld_agent_tid as TID,
hld_application_handle AS HLD_APP FROM
TABLE (MON_GET_APPL_LOCKWAIT(131130, -2))
LOCK_NAME MEMBER TID HLD_APP
-------------------------- ------ ------ -------
00030005000000000280000452 0 1234 65564
00030005000000000280000452 1 5478 65564
00030005000000000280000452 2 4678 65564
3 record(s) selected.
SELECT SYSTEM_AUTH_ID,
APPLICATION_NAME AS APP_NAME,
WORKLOAD_NAME AS WORKLOAD,
WORKLOAD_OCCURRENCE_STATE AS WL_STATE
FROM TABLE(WLM_GET_SERVICE_CLASS_WORKLOAD_OCCURRENCES_V97('','',-2))
WHERE APPLICATION_HANDLE = 65564
SYSTEM_AUTH_ID APP_NAME WORKLOAD WL_STATE
-------------- -------- ----------------------- -----------
ZURBIE db2bp SYSDEFAULTUSERWORKLOAD UOWWAIT
1 record(s) selected
LOCK_WAIT_START_TIME、 LOCK_NAME、 LOCK_OBJECT_TYPE、 LOCK_MODE、 LOCK_CURRENT_MODE、 LOCK_MODE_REQUESTED、 LOCK_STATUS、 LOCK_ESCALATION、 LOCK_ATTRIBUTES、 LOCK_RRIID、 LOCK_COUNT、 TBSP_ID、 TAB_FILE_ID、 SUBSECTION_NUMBER。
REQ_APPLICATION_HANDLE、 REQ_AGENT_TID、 REQ_MEMBER、 REQ_EXECUTABLE_ID
HLD_APPLICATION_HANDLE、HLD_MEMBER、ADDITIONAL_DETAILS
| 列名 | データ・タイプ | 説明またはモニター・エレメント |
|---|---|---|
| LOCK_WAIT_START_TIME | TIMESTAMP | |
| LOCK_NAME | VARCHAR(32) | lock_name - ロック名 ロックについての詳細情報を得るために、MON_FORMAT_LOCK_NAME 表関数を使用して内部名をフォーマット設定できます。 例えば、表ロックの場合には、ロックが参照している表および表スペースを検出できます。 |
| LOCK_OBJECT_TYPE_ID | CHAR(1) FOR BIT DATA | 内部使用のために予約済み |
| LOCK_OBJECT_TYPE | VARCHAR(32) | lock_object_type - 待機中のロック対象タイプ 可能な値については、『lock_object_type - 待機中のロック対象タイプ』モニター・エレメントを参照してください |
| LOCK_MODE | VARCHAR(3) | lock_mode - ロック・モード
このロックを保持しているアプリケーションが見つからない場合、NULL 値が戻されます。 |
| LOCK_CURRENT_MODE | VARCHAR(3) | lock_current_mode - 移行前の元のロック・モード
移行が行われなかった場合は、NULL 値が戻されます。 |
| LOCK_MODE_REQUESTED | VARCHAR(3) | lock_mode_requested - 要求されているロック・モード |
| LOCK_STATUS | CHAR(1) | lock_status - ロック状況 |
| LOCK_ESCALATION | CHAR(1) | lock_escalation - ロック・エスカレーション |
| LOCK_ATTRIBUTES | CHAR(16) | lock_attributes - ロック属性 |
| LOCK_RRIID | BIGINT | 内部使用のために予約済み |
| LOCK_COUNT | BIGINT | lock_count - ロック・カウント・モニター・エレメント |
| TBSP_ID | BIGINT | tablespace_id - 表スペース ID |
| TAB_FILE_ID | BIGINT | table_file_id - 表ファイル ID |
| SUBSECTION_NUMBER | BIGINT | ss_number - サブセクション番号
サブセクション番号を入手できない場合には NULL 値が戻されます。 |
REQ_APPLICATION_ |
BIGINT | |
| REQ_AGENT_TID | BIGINT | req_agent_tid - 要求元のエージェント TID |
| REQ_MEMBER | SMALLINT | req_member - 要求元のメンバー |
| REQ_EXECUTABLE_ID | VARCHAR (32) FOR BIT DATA | req_executable_id - 要求元の実行可能 ID |
HLD_APPLICATION_ |
BIGINT | hld_application_handle - 保持しているアプリケーション・ハンドル このロックを保持しているアプリケーションが不明または見つからない場合には、NULL 値が戻されます。 |
| HLD_MEMBER | SMALLINT | hld_member - 保持しているメンバー |
| ADDITIONAL_DETAILS | BLOB(100K) | 内部使用のために予約済み |