Lock:Deadlock Chain イベント クラス
適用対象: SQL サーバー
Lock:Deadlock Chain イベント クラスは、デッドロックに関係するオブジェクトごとに生成されます。
Lock:Deadlock Chain イベント クラスを使用すると、いつデッドロックの状態が発生したかを監視できます。 この情報は、デッドロックがアプリケーションのパフォーマンスに重大な影響を与えているかどうかや、デッドロックに関係しているオブジェクトを特定する際に役立ちます。 これらのオブジェクトを変更するアプリケーション コードを調べて、デッドロックを最小限に抑える変更を行うことができるかどうかを判断できます。
Lock:Deadlock Chain イベント クラスのデータ列
データ列名 | データの種類 | 説明 | 列 ID | フィルター可能 |
---|---|---|---|---|
BinaryData | image | ロック リソース ID。 | 2 | はい |
DatabaseID | int | このリソースが所属するデータベースの ID。 SQL Server Profiler では、 ServerName データ列がトレースにキャプチャされ、そのサーバーが利用可能な場合、データベースの名前が表示されます。 データベースに対応する値は、DB_ID 関数を使用して特定します。 | 3 | はい |
DatabaseName | nvarchar | リソースが所属するデータベースの名前。 | 35 | はい |
EventClass | int | イベントの種類 = 59。 | 27 | いいえ |
EventSequence | int | 要求内の特定のイベントのシーケンス。 | 51 | いいえ |
EventSubClass | int | イベント サブクラスの種類。 101 = リソースの種類のロック 102 = リソースの種類の交換 |
21 | はい |
IntegerData | int | デッドロック番号。 サーバーを起動すると、0 から始まる番号が割り当てられ、デッドロックが発生するたびに 1 ずつ加算されます。 | 25 | はい |
IntegerData2 | int | 単に情報を示すためだけに特定されます。 サポートされていません。 将来の互換性は保証されません。 | 55 | はい |
IsSystem | int | イベントがシステム プロセスとユーザー プロセスのどちらで発生したか。 1 はシステム、0 はユーザーです。 | 60 | はい |
LoginSid | image | ログイン ユーザーのセキュリティ ID 番号 (SID)。 この情報は、sys.server_principals カタログ ビューで参照できます。 各 SID はサーバーのログインごとに一意です。 | 41 | はい |
モード | int | 0 = NULL - 他のすべてのロック モードと互換性あり (LCK_M_NL) 1 = スキーマ安定度ロック (LCK_M_SCH_S) 2 = スキーマ変更ロック (LCK_M_SCH_M) 3 = 共有ロック (LCK_M_S) 4 = 更新ロック (LCK_M_U) 5 = 排他ロック (LCK_M_X) 6 = インテント共有ロック (LCK_M_IS) 7 = インテント更新ロック (LCK_M_IU) 8 = インテント排他ロック (LCK_M_IX) 9 = 更新のためのインテント付き共有 (LCK_M_SIU) 10 = インテント排他付き共有 (LCK_M_SIX) 11 = インテント排他付き更新 (LCK_M_UIX) 12 = 一括更新ロック (LCK_M_BU) 13 = 共有キー範囲/共有 (LCK_M_RS_S) 14 = 共有キー範囲/更新 (LCK_M_RS_U) 15 = キー範囲挿入/NULL (LCK_M_RI_NL) 16 = 挿入キー範囲/共有 (LCK_M_RI_S) 17 = 挿入キー範囲/更新 (LCK_M_RI_U) 18 = 挿入キー範囲/排他 (LCK_M_RI_X) 19 = 排他キー範囲/共有 (LCK_M_RX_S) 20 = 排他キー範囲/更新 (LCK_M_RX_U) 21 = 排他キー範囲/排他 (LCK_M_RX_X) |
32 | はい |
ObjectID | int | ロックされたオブジェクトの ID (使用可能かつ適用可能な場合)。 | 22 | はい |
ObjectID2 | bigint | 関連するオブジェクトまたはエンティティの ID (使用可能かつ適用可能な場合)。 | 56 | はい |
OwnerID | int | 1 = TRANSACTION 2 = CURSOR 3 = SESSION 4 = SHARED_TRANSACTION_WORKSPACE 5 = EXCLUSIVE_TRANSACTION_WORKSPACE |
58 | はい |
RequestID | int | ステートメントが含まれている要求の ID。 | 49 | はい |
ServerName | nvarchar | トレース対象の SQL Server のインスタンスの名前。 | 26 | いいえ |
SessionLoginName | nvarchar | セッションを開始したユーザーのログイン名。 たとえば、Login1 を使用して SQL Server に接続し、Login2 としてステートメントを実行すると、SessionLoginName に Login1 が表示され、LoginName に Login2 が表示されます。 この列には、SQL Server ログインと Microsoft Windows ログインの両方が表示されます。 | 64 | はい |
SPID | int | イベントが発生したセッションの ID。 | 12 | はい |
StartTime | datetime | イベントの開始時刻 (取得できた場合)。 | 14 | はい |
TextData | ntext | リソースの種類に依存するテキスト値。 | 1 | はい |
TransactionID | bigint | システムによって割り当てられたトランザクション ID。 | 4 | はい |
Type | int | 1 = NULL_RESOURCE 2 = DATABASE 3 = FILE 5 = OBJECT 6 = PAGE 7 = KEY 8 = EXTENT 9 = RID 10 = APPLICATION 11 = METADATA 12 = AUTONAMEDB 13 = HOBT 14 = ALLOCATION_UNIT |
57 | はい |
参照
sp_trace_setevent (Transact-SQL)
sys.dm_tran_locks (Transact-SQL)