Search Results format_call_stack




Overview

SYS.DBMS_UTILITY is an Oracle-supplied, server-resident PL/SQL package that provides a broad set of low-level utility routines used throughout the Oracle database kernel and, by extension, across Oracle E-Business Suite releases 12.1.1 and 12.2.2. Although the package is owned by SYS and classified by ETRM as OTHER, it is one of the most widely depended-upon APIs in the EBS technology stack: the metadata records that it is referenced by 195 other packages. In an EBS context, DBMS_UTILITY serves three principal business functions: it supplies diagnostic and error-reporting primitives (notably FORMAT_ERROR_STACK and FORMAT_CALL_STACK) that enable consistent, human-readable error capture in concurrent programs and forms; it provides name resolution, tokenization, and string-to-list conversion helpers used by EBS object-definition and installation utilities; and it exposes database environment and version introspection routines that allow EBS code to adapt its behavior to the underlying database version, cluster configuration, and parameter settings.

Key Procedures and Functions

  • FORMAT_ERROR_STACK / FORMAT_CALL_STACK — Return the current error stack and call stack, respectively, as a formatted string. These are the routines most commonly referenced by EBS exception handlers.
  • COMPILE_SCHEMA / VALIDATE / INVALIDATE — Recompile all procedures and functions in a schema, and validate or invalidate individual objects, primarily used during patching and object migration.
  • ANALYZE_SCHEMA / ANALYZE_DATABASE — Gather optimizer statistics for a schema or the entire database.
  • IS_CLUSTER_DATABASE — Report whether the instance is part of a clustered (RAC) configuration.
  • GET_TIME / GET_PARAMETER_VALUE — Return the current time in hundredths of a second and the value of a named database parameter.
  • NAME_RESOLVE / NAME_TOKENIZE — Parse and resolve object names into their schema, object, part, and database-link components.
  • COMMA_TO_TABLE / TABLE_TO_COMMA — Convert a delimited string into a PL/SQL table and vice versa, using the documented array types such as name_array and lname_array.
  • PORT_STRING / DB_VERSION — Return the platform identifier and database version string.
  • MAKE_DATA_BLOCK_ADDRESS / DATA_BLOCK_ADDRESS_FILE / DATA_BLOCK_ADDRESS_BLOCK — Construct and decompose data block addresses.
  • GET_HASH_VALUE — Compute a hash value for a given string, supporting hash-based partition and lookup logic.

Tables Accessed

The documented metadata records no application tables accessed through APPS synonyms. DBMS_UTILITY operates against fixed data dictionary and instance structures rather than EBS application tables; ANALYZE_SCHEMA and ANALYZE_DATABASE write optimizer statistics into the dictionary, and the name-resolution routines read dictionary metadata. No EBS business tables are read or written by this package.

Usage Notes

In Oracle EBS, DBMS_UTILITY is most frequently invoked from custom PL/SQL error handlers, where FORMAT_ERROR_STACK is called inside an OTHERS exception block to log a complete error trace into EBS log tables such as FND_LOG_MESSAGES. It is also used within concurrent program logic and Oracle Forms server-side triggers for the same diagnostic purpose. Administration routines such as COMPILE_SCHEMA, VALIDATE, and ANALYZE_SCHEMA are typically executed from SQL*Plus or via adpatch-driven scripts during patching and post-install maintenance. Because the package is owned by SYS and granted to PUBLIC, custom EBS code may call it directly, but developers should note that behavior can vary slightly between database versions supported by EBS 12.1.1 and 12.2.2.