- スキーマ:
LOCK_WAIT_HISTORY ビュー¶
重要
この表示は組織アカウントでのみ利用可能です。詳細については、 組織アカウントのプレミアムビュー をご参照ください。
このOrganization Usageビューには、ロック待ち中の トランザクション の履歴が含まれます。詳細については、 LOCK_WAIT_HISTORY ビューでブロックされたトランザクションの分析 をご参照ください。
列¶
組織レベルの列
列名 |
データ型 |
説明 |
---|---|---|
ORGANIZATION_NAME |
VARCHAR |
組織の名前。 |
ACCOUNT_LOCATOR |
VARCHAR |
システムが生成したアカウントの識別子。 |
ACCOUNT_NAME |
VARCHAR |
ユーザー定義のアカウント識別子。 |
追加列
列名 |
データ型 |
説明 |
---|---|---|
OBJECT_ID |
NUMBER |
ロックを待機しているトランザクションのブロッキングオブジェクト(テーブルなど)の内部/システム生成識別子。 |
LOCK_TYPE |
TEXT |
ロックの型。有効な値は、 |
OBJECT_NAME |
TEXT |
ロックを待機しているトランザクションのオブジェクト(テーブルなど)の識別子。 |
SCHEMA_ID |
NUMBER |
トランザクションがロックを待機しているオブジェクトのスキーマの内部/システム生成識別子。 |
SCHEMA_NAME |
TEXT |
トランザクションがロックを待機しているオブジェクトのスキーマの識別子。NULL は |
DATABASE_ID |
NUMBER |
トランザクションがロックを待機しているオブジェクトのデータベースの内部/システム生成識別子。 |
DATABASE_NAME |
TEXT |
トランザクションがロックを待機しているオブジェクトのデータベースの識別子。 |
QUERY_ID |
TEXT |
ロックを待機している SQL ステートメントの内部/システム生成識別子。 |
TRANSACTION_ID |
NUMBER |
ロックを待機しているステートメントを含む内部/システム生成された トランザクションの識別子。トランザクション内のステートメントに関する追加の詳細については、 QUERY_HISTORY ビュー と結合できます。 |
REQUESTED_AT |
TIMESTAMP_LTZ |
ロックを待機しているトランザクションによってロックがリクエストされたときのタイムスタンプ。 |
ACQUIRED_AT |
TIMESTAMP_LTZ |
ロックを保持しているトランザクションによってロックが取得されたときのタイムスタンプ。 |
BLOCKER_QUERIES |
VARIANT |
オブジェクトの JSON 配列。各オブジェクトは、以下のプロパティを持つブロッカークエリです: .
この配列には最大20個のオブジェクトが存在する可能性があります。 |
使用上の注意¶
blocker_queries
配列で返される最初のブロッカークエリ ID は、ロックを待機しているトランザクションが待機を開始したときに、ロックを保持しているトランザクションで実行されていたクエリの ID です。ブロッカートランザクション内にあるそのクエリの前のクエリもロックを取得した可能性があるため、調査する必要があることに注意してください。出力の各行は、ロックを待機しているトランザクションを表します。同じロックで待機している他の後続トランザクションが存在する可能性があることに注意してください。
例¶
過去24時間以内にロックをリクエストし、ブロックされたすべてのトランザクションを検索します。
SELECT account_name, query_id, object_name, transaction_id, blocker_queries
FROM snowflake.organization_usage.alert_history.lock_wait_history
WHERE requested_at >= DATEADD('hours', -24, CURRENT_TIMESTAMP());
その他の例については、 LOCK_WAIT_HISTORY ビューでブロックされたトランザクションの分析 をご参照ください。