Skip to main content
← PL/SQL Topics

Advanced & Performance

Explain DBMS_APPLICATION_INFO for instrumenting long-running code

DBMS_APPLICATION_INFO

ExplanationOracle Fusion / EBS · Technical · PL/SQLHigh confidenceGenerated

It publishes module, action and progress text into V$SESSION / V$SESSION_LONGOPS so running jobs are observable.

How it works

DBMS_APPLICATION_INFO.SET_MODULE(module, action) and SET_ACTION(action) stamp the current session's row in V$SESSION — invaluable for seeing what a batch job is doing right now, and for grouping in AWR/trace by module. SET_CLIENT_INFO adds a free-text field. SET_SESSION_LONGOPS drives the V$SESSION_LONGOPS progress bar for operations you can quantify. Set the module on entry, update the action per phase, and clear it on exit.

How it works
CREATE OR REPLACE PROCEDURE nightly_close AS
BEGIN
  DBMS_APPLICATION_INFO.SET_MODULE('NIGHTLY_CLOSE', 'start');

  DBMS_APPLICATION_INFO.SET_ACTION('validate');
  -- ... validation ...

  DBMS_APPLICATION_INFO.SET_ACTION('post_gl');
  -- ... posting ...

  DBMS_APPLICATION_INFO.SET_MODULE(NULL, NULL);   -- clear on exit
END;
/

Related questions

GroundingGenerated

Model-generated, grounded against the curated knowledge layer. Check specifics against your instance.

Have a follow-up, or a different question?

Continue in Ask Oracle AI