2026-03-12 20:23:15

This commit is contained in:
root
2026-03-12 21:23:47 +01:00
parent eab4b36eca
commit 93039b8489
3332 changed files with 699614 additions and 0 deletions

View File

@@ -0,0 +1,62 @@
COL con_id FOR 999 HEA 'Con|ID';
COL pdb_name FOR A30 HEA 'PDB Name' FOR A30 TRUNC;
COL last_active_time FOR A19 HEA 'Last Active Time';
COL plan_hash_value FOR 9999999999 HEA 'Plan|Hash Value';
COL child_number FOR 999999 HEA 'Child|Number';
COL object_status FOR A14 HEA 'Object Status';
COL is_obsolete FOR A8 HEA 'Is|Obsolete';
COL is_shareable FOR A9 HEA 'Is|Shareable';
COL is_bind_aware FOR A9 HEA 'Is Bind|Aware';
COL is_bind_sensitive FOR A9 HEA 'Is Bind|Sensitive';
COL parsing_schema_name FOR A30 HEA 'Parsing Schema Name';
--
PRO
PRO PLANS IN MEMORY (v$sql)
PRO ~~~~~~~~~~~~~~~
WITH
ranked_child_cursors AS (
SELECT /*+ MATERIALIZE NO_MERGE */
sql_id,
con_id,
child_number,
ROW_NUMBER () OVER (PARTITION BY con_id, plan_hash_value ORDER BY
CASE
WHEN object_status = 'VALID' AND is_obsolete = 'N' AND is_shareable = 'Y' THEN 1
WHEN object_status = 'VALID' AND is_obsolete = 'N' AND is_shareable = 'N' THEN 2
WHEN object_status = 'VALID' AND is_obsolete = 'Y' THEN 3
ELSE 4
END,
last_active_time DESC) AS row_number,
plan_hash_value,
last_active_time,
object_status,
is_obsolete,
is_shareable,
is_bind_sensitive,
is_bind_aware,
parsing_schema_name
FROM v$sql
WHERE sql_id = '&&cs_sql_id.'
AND ('&&cs_plan_hash_value.' IS NULL OR plan_hash_value = TO_NUMBER('&&cs_plan_hash_value.'))
)
SELECT TO_CHAR(r.last_active_time, '&&cs_datetime_full_format.') AS last_active_time,
r.con_id,
c.name AS pdb_name,
r.child_number,
r.object_status,
r.is_obsolete,
r.is_shareable,
r.is_bind_sensitive,
r.is_bind_aware,
r.parsing_schema_name,
r.plan_hash_value
FROM ranked_child_cursors r,
v$containers c
WHERE r.row_number <= 3 -- up to N most recently active child cursors per plan_hash_value
AND c.con_id = r.con_id
ORDER BY
r.last_active_time,
r.con_id,
r.child_number
/
--