Oracle DUMPDIANA
Version 12.2.0.1

General Information
Library Note Morgan's Library Page Header
Coming to OpenWorld 2018? Be sure to visit the TidalScale booth in Moscone South and learn how to solve performance problems and lower costs with Software Defined Servers. Before you visit the booth, or if you can't make it this year, check out TidalScale at www.tidalscale.com. Be sure to click on the Solutions link and look through the Oracle resources.
Purpose This package makes possible a human-readable Diana dump.

The three supported output formats are the `traditional' indented tree format, the flat, ordered list of nodes, and the 'COG' format, also flat.
AUTHID DEFINER
Constants
Name Data Type Value
Printing Format
print_default_format BINARY_INTEGER 0
print_in_order BINARY_INTEGER 1
print_cog_format BINARY_INTEGER 2
print_tree_structured BINARY_INTEGER 3
Dependencies
DBMS_OUTPUT DUMPDIANA_LIB PIDL
DIUTIL    
Documented No
First Available Not known
Security Model Owned by SYS with
Source {ORACLE_HOME}/rdbms/admin/dumpdian.sql
Subprograms
 
DUMP
Traverses the diana of a named library unit created by PL/SQL (eg: procedure/function/package-spec/package-body)

Overload 1
dumpdiana.dump(
aName        IN VARCHAR2,
lu_type      IN NUMBER         := sys.diutil.libunit_type_spec,
print_format IN BINARY_INTEGER := print_default_format);
SQL> exec dumpdiana.dump('UTL_FILE');
user: SYS

PL/SQL procedure successfully completed.
Procedure to traverse the diana rooted at a given node and output the Diana in human-readable format. This procedure would typically be used in conjunction with a debugger, which would be used to supply the node value.

Overload 2
dumpdiana.dump(
nod          IN sys.pidl.ptnod,
print_format IN BINARY_INTEGER := print_default_format);
SQL> exec dumpdiana.dump(0, dumpdiana.print_default_format);
Warning: Null input node to dump().

PL/SQL procedure successfully completed.

SQL> exec dumpdiana.dump(-1, dumpdiana.print_default_format);
BEGIN dumpdiana.dump(-1, dumpdiana.print_default_format); END;
*
ERROR at line 1:
ORA-01426: numeric overflow
ORA-06512: at "SYS.DUMPDIANA", line 5
ORA-06512: at "SYS.DUMPDIANA", line 20
ORA-06512: at "SYS.DUMPDIANA", line 37
ORA-06512: at line 1


SQL> exec dumpdiana.dump(1, dumpdiana.print_default_format);
ERROR:
ORA-03114: not connected to ORACLE
BEGIN dumpdiana.dump(1, dumpdiana.print_default_format); END;
*
ERROR at line 1:
ORA-03113: end-of-file on communication channel
Process ID: 14300
Session ID: 386 Serial number: 51458
 
NODECOUNT
Procedure to print a count of the number of nodes in the Diana of a named library unit

Overload 1
dumpdiana.node_count(
aName   IN VARCHAR2,
lu_type IN NUNMBER := sys.diutil.libunit_type_spec);
exec dumpdiana.node_count('UTL_FILE');
Procedure to print a count of the number of nodes in the Diana tree containing a given node.

Overload 2
dumpdiana.node_count(nod IN sys.pidl.ptnod);
exec dumpdiana.node_count(1);

Related Topics
Built-in Functions
Built-in Packages
What's New In 12cR1
What's New In 12cR2

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