Oracle PRVT_HDM
Version 26ai

General Information
Library Note Morgan's Library Page Header
The best Oracle News for FY2026

Oracle Database 26ai is now availble. If you haven't you downloaded already: Why?
Purpose Utilities for creating ADDM Reports
AUTHID DEFINER
Data Types TYPE addm_cont_db_tb

TYPE addm_cont_inst_tb
Dependencies SELECT name FROM dba_dependencies WHERE referenced_name = 'PRVT_HDM' UNION
SELECT referenced_name FROM dba_dependencies WHERE name = 'PRVT_HDM' ORDER BY 1;


Returns 113 objects
Documented No
Exceptions
Error Code Reason
ORa-13605 The specified task or object 65377 does not exist for the current user.
First Available Not Known
Security Model Owned by SYS with no privileges granted
Source {ORACLE_HOME}/rdbms/admin/prvshdm.plb
{ORACLE_HOME}/rdbms/admin/prvthdm.plb

{ORACLE_HOME}/rdbms/admin/catadv.sql
{ORACLE_HOME}/rdbms/admin/catfusrg.sql
Subprograms
 
ADDM_FILL_EXADATA_IO_TABLES (new 23ai)
Undocumented prvt_hdm.addm_fill_exadata_io_tables(
p_dbid        IN NUMBER,
begin_snap_id IN NUMBER,
end_snap_id   IN NUMBER)
RETURN NUMBER;
TBD
 
ADDM_REPORTS
Undocumented prvt_hdm.addm_reports(
p_dbid            IN NUMBER,
p_begin_snap_id   IN NUMBER,
p_end_snap_id     IN NUMBER,
p_instance_number IN NUMBER,
p_html            IN NUMBER)
RETURN sys.awrrpt_html_type_table;
SELECT dbid
FROM v$database;

      DBID
----------
1472724728


SELECT MAX(snap_id)
FROM dba_hist_snapshot;

MAX(SNAP_ID)
------------
        1547



DECLARE
 tname VARCHAR2(30) := 'UW_TASK1';
BEGIN
  dbms_addm.analyze_inst(tname, 1545, 1547, 1,1472724728);
  dbms_output.put_line(tname);
END;
/

SELECT * FROM TABLE(prvt_hdm.addm_reports(1472724728, 1545, 1547, 1, 1));

OUTPUT
----------------------------------------------------------------------------------------
ADDM Report for Task 'UW_TASK1'
-------------------------------

Analysis Period
---------------
AWR snapshot range from 1545 to 1547.
Time period starts at 16-JUL-25 05.58.28 PM
Time period ends at 16-JUL-25 07.58.50 PM

Analysis Target
---------------
Database 'FREE' with DB ID 1472724728.
Database version 23.0.0.0.0.
ADDM performed an analysis of instance free, numbered 1 and hosted at DDMORGAN-DQQ9KR.
ADDM detected that the database type is MULTITENANT DB.

Activity During the Analysis Period
-----------------------------------
Total database time was 47 seconds.
The average number of active sessions was .01.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

There are no findings to report.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Additional Information
----------------------

Miscellaneous Information
-------------------------
There was no significant database activity to run the ADDM.

40 rows selected.
 
ADDM_REPORT_JSON (new 23ai)
Undocumented prvt_hdm.addm_report_json(
p_dbid       IN VARCHAR2,
p_inst_id    IN VARCHAR2,
p_begin_time IN VARCHAR2,
p_end_time   IN VARCHAR2,
p_days       IN VARCHAR2,
p_owner      IN VARCHAR2,
p_task_name  IN VARCHAR2,
p_section    IN VARCHAR2)
RETURN CLOB;
TBD
 
ADDM_REPORT_XML
Undocumented prvt_hdm.addm_report_xml(
p_dbid       IN VARCHAR2,
p_inst_id    IN VARCHAR2,
p_begin_time IN VARCHAR2,
p_end_time   IN VARCHAR2,
p_days       IN VARCHAR2,
p_owner      IN VARCHAR2,
p_task_name  IN VARCHAR2,
p_section    IN VARCHAR2,
p_spotrep    IN VARCHAR2,
p_spotlist   IN VARCHAR2,
p_show_sql   IN VARCHAR2)
RETURN XMLTYPE;
TBD
 
ADDM_TASK_LIST_JSON (new 23ai)
Undocumented prvt_hdm.addm_task_list_json(
p_dbid       IN VARCHAR2,
p_inst_id    IN VARCHAR2,
p_begin_time IN VARCHAR2,
p_end_time   IN VARCHAR2,
p_owner      IN VARCHAR2)
RETURN CLOB;
TBD
 
ADDM_TASK_LIST_XML
Undocumented prvt_hdm.addm_task_list_xml(
p_dbid       IN NUMBER,
p_inst_id    IN NUMBER,
p_begin_time IN DATE,
p_end_time   IN DATE,
p_owner      IN VARCHAR2,
p_show_sql   IN BOOLEAN)
RETURN XMLTYPE;
TBD
 
ADDM_TASK_REPORT_LINES
Undocumented prvt_hdm.addm_task_report_lines(
p_task_id IN NUMBER,
p_html    IN NUMBER)
RETURN sys.awrrpt_html_type_table;
TBD
 
ADDM_TASK_REPORT_XML
Undocumented prvt_hdm.addm_task_report_xml(
p_owner     IN VARCHAR2,
p_task_name IN VARCHAR2,
p_show_sql  IN BOOLEAN)
RETURN XMLTYPE;
TBD
 
ADDM_TRUNC_EXADATA_IO_TABLES (new 23ai)
Undocumented prvt_hdm.addm_trunc_exadata_io_tables;
exec prvt_hdm.addm_trunc_exadata_io_tables;

PL/SQL procedure successfully completed.
 
ADD_INFO
Undocumented prvt_hdm.add_info(task_id IN NUMBER);
exec prvt_hdm.add_info(65377);
*
ORA-01403: no data found
 
ADD_TOP_CONTAINERS (new 23ai)
Undocumented prvt_hdm.add_top_containers(
p_task_id   IN NUMBER,
p_exec_name IN VARCHAR2,
p_sintrsec  IN NUMBER);
TBD
 
AGGREGATE_FINDINGS
Undocumented prvt_hdm.aggregate_findings(
task_id      IN NUMBER,
total_dbtime IN NUMBER,
ap_duration  IN NUMBER,
ename        IN VARCHAR2)
TBD
 
APPLY_DIRECTIVES
Undocumented prvt_hdm.apply_directives(task_id IN NUMBER);
exec prvt_hdm.apply_directives(65377);

PL/SQL procedure successfully completed.
 
AUTOMATE_ACTIONS
Undocumented prvt_hdm.automate_actions(
auto_task_id   IN NUMBER,
budget_in_secs IN NUMBER);
TBD
 
AUTO_EXECUTE
Undocumented prvt_hdm.auto_execute(
db_id             IN NUMBER,
inst_id           IN NUMBER,
end_snap          IN NUMBER,
time_left_in_secs IN NUMBER);
exec prvt_hdm.auto_execute(1472724728, 1, 1447, 1547);

PL/SQL procedure successfully completed.
 
CLEAR_TEMP_TABLES (new 23ai)
Undocumented prvt_hdm.clear_temp_tables;
exec prvt_hdm.clear_temp_tables;

PL/SQL procedure successfully completed.
 
DB_FEATURE_CLOB
Undocumented prvt_hdm.db_feature_clob RETURN CLOB;
DECLARE
 retVal CLOB;
BEGIN
  retVal := prvt_hdm.db_feature_clob;
  dbms_output.put_line(retVal);
END;
/
<ADDM_USAGE>
  <TASKS>
    <TOTAL>169</TOTAL>
    <MANUAL>1</MANUAL>
    <FIRST>21:58:10 JUL-09-2025</FIRST>
    <LAST>20:58:04 JUL-16-2025</LAST>
  </TASKS>
  <FINDINGS></FINDINGS>
</ADDM_USAGE>

PL/SQL procedure successfully completed.
 
DEREGISTER_PENDING_ACTION (new 23ai)
Undocumented prvt_hdm.deregister_pending_action(
db_id    IN NUMBER,
inst_id  IN NUMBER,
end_snap IN NUMBER);
TBD
 
DEREGISTER_SLAVE_ACTION (new 23ai)
Undocumented prvt_hdm.deregister_slave_action(
db_id    IN NUMBER,
inst_id  IN NUMBER,
end_snap IN NUMBER);
TBD
 
DESCRIBE_DIRECTIVE
Undocumented prvt_hdm.describe_directive(
dir_name IN VARCHAR2,
data     IN CLOB)
RETURN VARCHAR2;
TBD
 
EVALUATE_METER
Undocumented prvt_hdm.evaluate_meter(task_id IN NUMBER);
SELECT created, task_id
FROM dba_addm_tasks
WHERE created BETWEEN SYSDATE-1 AND SYSDATE
ORDER BY 1;

CREATED              TASK_ID
-------------------- -------
16-JUL-2025 10:20:50   65519
16-JUL-2025 12:49:01   65520
16-JUL-2025 13:00:59   65521
16-JUL-2025 13:20:03   65522
...
17-JUL-2025 08:51:23   65550
17-JUL-2025 09:20:29   65551
17-JUL-2025 09:40:35   65552
17-JUL-2025 10:00:40   65553


exec prvt_hdm.evaluate_meter(65377);

PL/SQL procedure successfully completed.
 
EXECUTE
Undocumented prvt_hdm.execute(task_id IN NUMBER);
exec prvt_hdm.execute(65377);
     *
ORA-13605: The specified task or object 65377 does not exist for the current user.
 
EXECUTE_MANUAL_ACTIONS (new 23ai)
Undocumented prvt_hdm.execute_manual_actions(
db_id    IN NUMBER,
end_snap IN NUMBER);
TBD
 
EXECUTE_SLAVE_ACTIONS
Undocumented prvt_hdm.execute_slave_actions;
exec prvt_hdm.execute_slave_actions;

PL/SQL procedure successfully completed.
 
EXEC_PREDEF_CALL_SWITCH_CONT_CALLOUT (new 23ai)
Undocumented prvt_hdm.exec_predef_call_switch_cont_callout(
dest_con_id  IN BINARY_INTEGER,
call_id      IN BINARY_INTEGER,
num_arg1     IN BINARY_INTEGER,
num_arg2     IN BINARY_INTEGER,
num_arg3     IN BINARY_INTEGER,
num_arg4     IN BINARY_INTEGER,
num_arg5     IN BINARY_INTEGER,
num_arg6     IN BINARY_INTEGER,
num_arg7     IN BINARY_INTEGER,
num_arg8     IN BINARY_INTEGER,
txt_arg1     IN VARCHAR2,
txt_arg1_len IN BINARY_INTEGER,
txt_arg2     IN VARCHAR2,
txt_arg2_len IN BINARY_INTEGER)
TBD
 
FINDING_NAME_10G
Undocumented prvt_hdm.finding_name_10g(p_msg_id IN NUMBER) RETURN VARCHAR2;
TBD
 
FIND_LOCAL_FDGS
Undocumented prvt_hdm.find_local_fdgs(
tname   IN VARCHAR2,
task_id IN NUMBER,
ename   IN VARCHAR2);
TBD
 
GET_ASH_QUERY
Undocumented prvt_hdm.get_ash_query(
task_name  IN VARCHAR2,
finding_id IN NUMBER)
RETURN VARCHAR2;
TBD
 
GET_CONT_DB_CACHE (new 23ai)
Undocumented prvt_hdm.get_cont_db_cache(top_cont_db IN sys.prvt_hdm.addm_cont_db_tb)
RETURN sys.prvt_hdm.addm_cont_db_tb;
TBD
 
GET_CONT_INST_CACHE (new 23ai)
Undocumented prvt_hdm.get_cont_inst_cache(top_cont_inst IN sys.prvt_hdm.addm_cont_inst_tb)
RETURN sys.prvt_hdm.addm_cont_inst_tb;
TBD
 
GET_QUERY_PREDICATE
Undocumented prvt_hdm.get_query_predicate(
query_args IN VARCHAR2,
query_type IN BINARY_INTEGER)
RETURN VARCHAR2;
TBD
 
INCOMPLETE_AUTOTASKS_REPORT (new 23ai)
Undocumented prvt_hdm.incomplete_autotasks_report(
l_begin_time_utc IN TIMESTAMP,
l_end_time_utc   IN TIMESTAMP,
l_dbid           IN NUMBER);
TBD
 
JSON_REPORT_TO_TEXT (new 23ai)
Undocumented prvt_hdm.json_report_to_text(
json_report           IN CLOB,
report_level          IN NUMBER,
use_original_language IN BOOLEAN)
RETURN CLOB;
TBD
 
JSON_TASK_REPORT (new 23ai)
Undocumented prvt_hdm.json_task_report(taskid IN NUMBER) RETURN CLOB;
SELECT prvt_hdm.json_task_report(65377);

PRVT_HDM.JSON_TASK_REPORT(65377)
--------------------------------------------------------------------------------


1 row selected.
 
MESSAGE
Undocumented prvt_hdm.message(
id IN NUMBER,
p1 IN VARCHAR2,
p2 IN VARCHAR2,
p3 IN VARCHAR2,
p4 IN VARCHAR2,
p5 IN VARCHAR2)
RETURN VARCHAR2;
TBD
 
PARAMETER_EXISTS
Returns TRUE if the parameter name corresponds to a valid parameter prvt_hdm.parameter_exists(parameter_name IN VARCHAR2) RETURN BOOLEAN;
BEGIN
  IF prvt_hdm.parameter_exists('NotValid') THEN
    dbms_output.put_line('NotValid Is A Valid Parameter');
  ELSE
    dbms_output.put_line('NotValid Is Not A Valid Parameter');
  END IF;
END;
/
NotValid Is Not Valid A Valid Parameter

PL/SQL procedure successfully completed.
 
PRINT_ELEMENT
Undocumented prvt_hdm.print_element(
buffer      IN OUT CLOB,
level       IN     NUMBER,
header      IN     VARCHAR2,
data        IN     CLOB,
next_indent IN     NUMBER);
TBD
 
PRINT_LINE
Undocumented prvt_hdm.print_line(
buffer IN OUT CLOB,
data   IN     VARCHAR2);
TBD
 
PURGE_PENDING_ACTIONS (new 23ai)
Undocumented prvt_hdm.purge_pending_actions(
inst_id       IN NUMBER,
time_left_sec IN NUMBER);
TBD
 
REEXECUTE_TASK (new 23ai)
Undocumented prvt_hdm.reexecute_task(
db_id             IN NUMBER,
inst_id           IN NUMBER,
end_snap          IN NUMBER,
time_left_in_secs IN NUMBER);
TBD
 
REGISTER_PENDING_ACTION (new 23ai)
Undocumented prvt_hdm.register_pending_action(
db_id    IN NUMBER,
inst_id  IN NUMBER,
end_snap IN NUMBER);
TBD
 
REGISTER_SLAVE_ACTIONS
Undocumented prvt_hdm.register_slave_actions(
db_id        IN NUMBER,
is_rac_coord IN NUMBER,
end_snap     IN NUMBER);
TBD
 
RUN
Undocumented prvt_hdm.run(
db_id   IN NUMBER,
inst_id IN NUMBER,
snap1   IN NUMBER,
snap2   IN NUMBER,
task_nm IN VARCHAR2);
TBD
 
RUN_LOCALS
Undocumented prvt_hdm.run_locals(task_id IN NUMBER);
exec prvt_hdm.run_locals(65377);
     *
ORA-01403: no data found
 
TOP_ADDM_TASKS
Undocumented prvt_hdm.top_addm_tasks(
p_dbib            IN NUMBER,
p_begin_snap_id   IN NUMBER,
p_end_snap_id     IN NUMBER,
p_instance_number IN NUMBER)
RETURN sys.awrrpt_html_type_table;
TBD
 
TRANSLATE_CLOB
Undocumented prvt_hdm.translate_clob(
p_str  IN CLOB,
p_from IN VARCHAR2,
p_to   IN VARCHAR2)
RETURN CLOB;
TBD
 
UPDATE_FDG_COUNT
Undocumented prvt_hdm.update_fdg_count(task_id IN NUMBER);
exec prvt_hdm.update_fdg_count(65377);

PL/SQL procedure successfully completed.
 
VALIDATE_INSTANCE
Undocumented prvt_hdm.validate_instance(value IN VARCHAR2) RETURN BINARY_INTEGER;
TBD

Related Topics
Built-in Functions
Built-in Packages
Database Security
DBMS_ADVISOR
What's New In 21c
What's New In 26ai

Morgan's Library Page Footer
This site is maintained by Daniel Morgan. Last Updated: This site is protected by copyright and trademark laws under U.S. and International law. © 1998-2026 Daniel A. Morgan All Rights Reserved