ROWKEYコマンドは、付与およびブロックされた行レベルのロックを表示します。
行レベルのロックを要求するためにロック マネージャは行キー値を使用します(ロックと行パーティションで説明)。これによりロック マネージャは単一パーティションの行に制限される行レベルのロックを要求できるようになります。
- 行パーティション テーブルについて、ロック中の行キーのIPN部分がゼロ以外の値である場合、ロックは指定パーティションの行にのみ適用されます。これらの行にはロック中の行キーの行ハッシュ部分と一致する行ハッシュ値が含まれています。
ロック中の行キーのIPN部分がゼロの場合、ロックは行キーの行ハッシュ部分に一致する、テーブルのすべてのパーティションの行に適用されます。
- 非行パーティション テーブルの場合、行キーのパーティション番号部分は常にゼロで、行キーの行ハッシュ部分に一致する行ハッシュ値を持つテーブルの行がロックされます。
構文規則
{ ROWKEY | ROWK } [
DBname.Tablename TypeAndIndex [,] Partition RowHash1 RowHash2 |
ALL
]
構文要素
- DBname
- データベースの名前。
- Tablename
- DBnameのテーブルの名前。
- TypeAndIndex
- サブテーブルの識別子。
- Partition
- 行キー ロックの内部パーティション番号。10進数および16進数の数値が可能です。10進数の後にはピリオドが続く必要があります。
- RowHash1
- RowHash2
- ロック情報が表示される行を表わす行ハッシュの1番目と2番目の部分。
- ALL
- 行キーまたは行ハッシュのロックが適用されているすべてのテーブルが対象になります。
使用上の注意
次のテーブルは、ROWKEYコマンド出力の構成要素を示したものです。
| 構成要素 | 指定内容 |
|---|---|
| Tran | ロックが適用されている現在実行中のトランザクション。 |
| Hash Locks | トランザクションによって適用される行ハッシュ ロックの合計数。 |
| Range Locks | トランザクションによって適用される範囲ロックの合計数。 |
| RowKey Locks | トランザクションによって適用される行キー ロックの合計数。 |
| Host | 論理ホストID (トランザクションの起点)。 |
| Session | トランザクションのセッション番号。 |
| Mode | ロック モードのタイプ:
|
| User | ロック リクエストの対象であるログオンID。 |
| Database | 付与またはブロックされたロックを持つデータベースの名前。 |
| Table | 付与またはブロックされたロックを持つテーブルの名前。 |
| PLLKind | 適用されるパーティション レベルのロックの種類。これは行パーティション テーブルのロックに対してのみ表示されます。 |
| Subtable ID | 行キー ロックが適用されるサブテーブルのID |
| Partition1とPartition2 | ロックされている行の範囲を開始および終了する行キーの内部パーティション番号。ROWKEYコマンドで表示されるパーティション レベルのロックの場合、Partition1とPartition2は常に一致します。 内部パーティション番号は、物理行のrowidの部分です。16進で [[[hhhh.] hhhh.] [hhhh.hhhh]]、またはゼロと表示されます。 |
| RowHash1とRowHash2 | ロック情報が表示される行を表わす行ハッシュの1番目と2番目の部分。 10進数および16進数の数値が可能です。10進数の後にはピリオドが続く必要があります。 |
以下の例で、テーブルRPT1は行パーティション テーブルで、テーブルNOTRPT2は非パーティション テーブルです。
例: ROWKEYコマンドの例
この例では、以下の付与されたロック リクエストを示します。
- デッドロックを防ぐためにロックのシリアル化に使用されるプロキシ ロック
- 行パーティション テーブルに行ハッシュ31158,40503を持つ行上のWRITEロック。パーティション番号3の行のみがロックされます。
- 非パーティション テーブルに行ハッシュ31158,40503を持つ行上のWRITEロック。
-> Please enter your selection from the list:
rowkey
- The following amps are available:
0 1 2 3
-> Which amp(s) do you want to request on (S=Sampling/A=all/C=cancel/Q=quit):
1
---------------- AMP 1 REPORTS 5 LOCK ENTRIES -------------
GRANTED LOCK REQUEST(S):
Tran: 30719 00015DCA
Hash Locks : 1
Range Locks : 6
RowKey Locks : 2
Host: 1025 Session: 0, 1003 Mode: Rd User: EXAMPLE
Database: EXAMPLE Table: RPT1
PLLKind: RowHash + All Partitions Subtable ID: 1024
PROXY LOCK
: Partition1 : 0 Row Hash1: 65535,65535
: Partition2 : 0 Row Hash2: 65535,65535
Host: 1025 Session: 0, 1003 Mode: WR User: EXAMPLE
Database: EXAMPLE Table: RPT1
PLLKind: RowKey Subtable ID: 1024
: Partition1 : 0003 Row Hash1: 31158,40503
: Partition2 : 0003 Row Hash2: 31158,40503
Host: 1025 Session: 0, 1003 Mode: WR User: EXAMPLE
Database: EXAMPLE Table: NOTRPT2
Row Hash Lock Subtable ID: 1024
Row Hash1: 31158,40503
BLOCKED LOCK REQUEST(S):
Tran: 30719 00015E1B
Host: 0 Session: 0, 0 Mode: WR User: ALL
Database: EXAMPLE Table: RPT1#
PLLKind: RowKey Subtable ID: 1024
: Partition1 : 0003 Row Hash1: 31158,40503
: Partition2 : 0003 Row Hash2: 31158,40503
Tran: 30719 00015E1C
Host: 0 Session: 0, 0 Mode: WR User: ALL
Database: EXAMPLE Table: NOTRPT2
Row Hash Lock Subtable ID: 1024
Row Hash1: 31158,40503#
-> Please enter your selection from the list:
rowkey example.rpt1 400, 3 31158. 40503.
- The following amps are available:
0 1 2 3
-> Which amp(s) do you want to request on (S=Sampling/A=all/C=cancel/Q=quit):
1
---------------- AMP 1 REPORTS 2 LOCK ENTRIES -------------
GRANTED LOCK REQUEST(S):
Tran: 30719 00015DCA
Hash Locks : 1
Range Locks : 6
RowKey Locks : 1
Host: 1025 Session: 0, 1003 Mode: WR User: EXAMPLE
Database: EXAMPLE Table: RPT1
PLLKind: RowKey Subtable ID: 1024
: Partition1 : 0003 Row Hash1: 31158,40503
: Partition2 : 0003 Row Hash2: 31158,40503
BLOCKED LOCK REQUEST(S):
Tran: 30719 00015E1B
Host: 0 Session: 0, 0 Mode: WR User: ALL
Database: EXAMPLE Table: RPT1#
PLLKind: RowKey Subtable ID: 1024
: Partition1 : 0003 Row Hash1: 31158,40503
: Partition2 : 0003 Row Hash2: 31158,40503
-> Please enter your selection from the list:
rowkey example.notrpt2 400, 0 31158. 40503.
- The following amps are available:
0 1 2 3
-> Which amp(s) do you want to request on (S=Sampling/A=all/C=cancel/Q=quit):
1
---------------- AMP 1 REPORTS 2 LOCK ENTRIES -------------
GRANTED LOCK REQUEST(S):
Tran: 30719 00015DCA
Hash Locks : 1
Range Locks : 6
Host: 1025 Session: 0, 1003 Mode: WR User: EXAMPLE
Database: EXAMPLE Table: NOTRPT2
Row Hash Lock Subtable ID: 1024
Row Hash1: 31158,40503
BLOCKED LOCK REQUEST(S):
Tran: 30719 00015E1C
Host: 0 Session: 0, 0 Mode: WR User: ALL
Database: EXAMPLE Table: NOTRPT2
Row Hash Lock Subtable ID: 1024
Row Hash1: 31158,40503#