DISPLAY_ACTIVE_SESSION_PLAN関数は、指定されたセッションのリアルタイム計画の詳細を表示するために使用されます。
関数定義
DBMS_XPLAN.DISPLAY_ACTIVE_SESSION_PLAN(
session_id INTEGER DEFAULT 0,
format VARCHAR2 DEFAULT 'TYPICAL',
svr_ip VARCHAR2 DEFAULT NULL, -- default value: server connected by client
svr_port INTEGER DEFAULT 0 -- default value: server connected by client
)
return DISPLAY_ACTIVE_SESSION_PLAN;
パラメータの説明
| パラメータ | 説明 |
|---|---|
| session_id | ユーザーが接続しているセッションのIDです。プロキシセッションIDではなく、サーバーのセッションIDです。 |
| format | プランの形式情報を指定します。オプションパラメータは以下のとおりです:
|
| svr_ip | プランが存在するノードのIPアドレスです。デフォルトはセッション接続のノードのIPアドレスです。 |
| svr_port | プランが存在するノードのポート番号です。デフォルトはセッション接続のノードのポート番号です。 |
例
/* スローSQLの実行 */
obclient> SELECT COUNT(*) FROM TABLE(GENERATOR(100000)) A, TABLE(GENERATOR(10000))B;
+------------+
| COUNT(*) |
+------------+
| 1000000000 |
+------------+
1 row in set
/* 別のセッションに接続し、SHOW PROCESSLISTコマンドを使用して実行中のSQLのSession IDを照会する */
obclient> SHOW PROCESSLIST;
+------------+------+--------------------+------+---------+------+--------+---------------------------------------------------------------------------+
| ID | USER | HOST | DB | COMMAND | TIME | STATE | INFO |
+------------+------+--------------------+------+---------+------+--------+---------------------------------------------------------------------------+
| 3221675847 | SYS | 11.x.x.44:57841 | SYS | Query | 0 | ACTIVE | show processlist |
| 3221668463 | SYS | 11.x.x.44:57530 | SYS | Query | 2 | ACTIVE | select count(*) from table(generator(100000)) A, table(generator(10000))B |
+------------+------+--------------------+------+---------+------+--------+---------------------------------------------------------------------------+
/* Session計画の詳細を表示する */
obclient> SELECT DBMS_XPLAN.DISPLAY_ACTIVE_SESSION_PLAN(3221668463);
+--------------------------------------------------------------------------------------------------------------------+
| COLUMN_VALUE |
+--------------------------------------------------------------------------------------------------------------------+
| ============================================================================================================== |
| |ID|OPERATOR |NAME|EST.ROWS|EST.TIME(us)|REAL.ROWS|REAL.TIME(us)|IO TIME(us)|CPU TIME(us)| |
| -------------------------------------------------------------------------------------------------------------- |
| |0 |SCALAR GROUP BY | |1 |1794 |0 |0 |0 |0 | |
| |1 |└─NESTED-LOOP JOIN CARTESIAN | |39601 |1076 |0 |0 |0 |0 | |
| |2 | ├─FUNCTION_TABLE |A |199 |1 |0 |0 |0 |0 | |
| |3 | └─MATERIAL | |199 |80 |0 |0 |0 |0 | |
| |4 | └─FUNCTION_TABLE |B |199 |1 |0 |0 |0 |0 | |
| ============================================================================================================== |
| Outputs & filters: |
| ------------------------------------- |
| 0 - output([T_FUN_COUNT(*)]), filter(nil), rowset=256 |
| group(nil), agg_func([T_FUN_COUNT(*)]) |
| 1 - output(nil), filter(nil), rowset=256 |
| conds(nil), nl_params_(nil), use_batch=false |
| 2 - output(nil), filter(nil) |
| value(GENERATOR(cast(:0, BIGINT(-1, 0)))) |
| 3 - output(nil), filter(nil), rowset=256 |
| 4 - output(nil), filter(nil) |
| value(GENERATOR(cast(:1, BIGINT(-1, 0)))) |
+--------------------------------------------------------------------------------------------------------------------+