C.2 一般的な待機イベント・パラメータの説明
この項では一般的な待機イベント・パラメータについて説明します。
block#
これは、Oracleが待機する必要があるブロックのブロック番号です。ブロック番号は、ファイルの開始位置からの相対番号です。ブロックが属しているオブジェクトを検索するには、次のSQL文を発行します。
select segment_name, segment_type, owner, tablespace_name from dba_extents where file_id = file# and block# between block_id and block_id + blocks - 1;
blocks
ファイルから読み取られている、またはファイルに書き込まれているブロック数です。ブロック・サイズは、次のようにファイル・タイプによって異なります。
-
データベース・ファイルの場合は、
DB_BLOCK_SIZE
のブロック・サイズ -
ログファイルおよび制御ファイルの場合は、プラットフォームの物理ブロック・サイズと同じブロック・サイズ
break?
このパラメータの値が0の場合、クライアントにリセットが送信されたことを示します。値が0以外の場合、クライアントにブレークが送信されたことを示します。
class
ブロックのクラスは、ブロック内容の用途を示します。たとえば、クラス1はデータ・ブロックを、クラス2はソート・ブロックを表します。次のSQL問合せを使用して、ブロック・クラスを表示します。
select view_definition
from v$fixed_view_definition
where view_name='GV$WAITSTAT';
dba
dbaは、ファイル番号およびブロック番号で構成されるデータ・ブロック・アドレスの頭文字です。
driver id
現在使用中のドライバの切断関数のアドレスです。
file#
次の問合せを実行すると、データベース・ファイル名が戻ります。
select *
from v$datafile
where file# = file#;
id1
エンキューまたはグローバル・ロックの第1識別子(id1)は、P2またはP2RAWから値を取得します。識別子の意味は名前(P1)によって異なります。
id2
エンキューまたはグローバル・ロックの第2識別子(id2)は、P3またはP3RAWから値を取得します。識別子の意味は名前(P1)によって異なります。
le
V$GC_ELEMENT
に対する相対索引番号です。
mode
modeは、通常P1またはP1RAWの下位バイトに格納され、エンキューまたはグローバル・ロック要求のモードを示します。このパラメータは次のいずれか1つの値をとります。
表C-1 ロック・モードの値
モード値 | 説明 |
---|---|
1 |
NULLモード |
2 |
半共有 |
3 |
下位排他 |
4 |
共有 |
5 |
共有または下位排他 |
6 |
排他 |
ロック名とロック要求のモードを取り出すには、次のSQL文を使用します。
select chr(bitand(p1,-16777216)/16777215)|| chr(bitand(p1, 16711680)/65535) "Lock", bitand(p1, 65535) "Mode" from v$session_wait where event = 'DFS enqueue lock acquisition';
nameおよびtype
エンキューまたはグローバル・ロックの名前またはタイプは、P1またはP1RAWの上位2バイトを参照して判断できます。名前は、常に2文字です。ロック名を取り出すには、次のSQL文を使用します。
select chr(bitand(p1,-16777216)/16777215)|| chr(bitand(p1,16711680)/65535) "Lock" from v$session_wait where event = 'DFS enqueue lock acquisition';
namespace
V$DB_OBJECT_CACHE
ビューの表示と同様の、オブジェクトのネームスペースの名前です。
requests
要求されたI/Oの数です。1つの要求は複数のブロックを含む可能性があるので、この数値はブロック数とは一致しません。
session#
アクティブでないセッションの番号です。セッションに関する詳細情報を検索するには、次のSQL文を使用します。
select *
from v$session
where sid = session#;
waited
これは、このセッションの終了までにセッションが待機した合計時間です。