Search Results get_timeout




Overview

SYS.DBMS_RESUMABLE is a server-side PL/SQL package supplied by Oracle Database and exposed to the E-Business Suite through the SYS schema. Within Oracle EBS 12.1.1 and 12.2.2 it provides the infrastructure for resumable space allocation, the mechanism by which a long-running database operation that encounters a recoverable space condition — an exhausted tablespace, a reached maximum extent limit, or an exceeded user quota — is suspended rather than terminated with an error. When such a condition occurs, the statement is placed into a suspended state, the database records the event, and the operation is automatically resumed once the offending condition is corrected or the configured timeout interval elapses.

For EBS administrators and developers the package serves two practical purposes. First, it allows the timeout behaviour of the current session, or of a nominated session, to be inspected and modified through GET_TIMEOUT, SET_TIMEOUT, GET_SESSION_TIMEOUT, and SET_SESSION_TIMEOUT. The user's search for "set_timeout" targets precisely this capability, since SET_TIMEOUT is the entry point most often referenced when tuning how long a resumable operation waits before failing. Second, it supplies diagnostic and control functions — ABORT and SPACE_ERROR_INFO — that permit a suspended operation to be cancelled or its underlying space error to be interrogated. The package is classified as OTHER in ETRM and is owned by SYS, with an AUTHID CURRENT_USER declaration, meaning privilege checks for referenced objects execute against the invoking user.

Key Procedures and Functions

  • SET_TIMEOUT — Establishes the resumable timeout, in seconds, for the current session. This is the procedure most frequently associated with the "set_timeout" search term. It governs how long a suspended statement may remain in the suspended state before the database raises an error.
  • GET_TIMEOUT — Returns the resumable timeout currently in effect for the calling session as a NUMBER.
  • SET_SESSION_TIMEOUT — Assigns a timeout value to a specific session identified by session ID, enabling an administrator to adjust another session's resumable behaviour without direct access to that session.
  • GET_SESSION_TIMEOUT — Returns the resumable timeout configured for a nominated session, identified by session ID.
  • ABORT — Terminates a suspended resumable operation for the nominated session ID, removing it from the suspended state rather than allowing it to resume.
  • SPACE_ERROR_INFO — Returns a BOOLEAN indicating whether the current error is a resumable space error, and populates OUT parameters describing the error type, the object type and owner, the tablespace name, and the object and sub-object names involved.

Tables Accessed

The package operates against the fixed server error infrastructure, referenced in EBS through the APPS synonyms ORA_SERVER_ERROR, ORA_SERVER_ERROR_DEPTH, and ORA_SERVER_ERROR_PARAM. These underlying dictionary structures hold the error stack information that SPACE_ERROR_INFO reads when reporting the nature and location of a resumable condition. Because the component is a database-supplied package rather than an EBS application object, it does not read or write the standard EBS transactional tables; its data footprint is limited to the server error views and the internal session state that records timeout values and suspension status.

Usage Notes

DBMS_RESUMABLE is typically invoked from server-side PL/SQL rather than from an EBS form. Its most common application is in custom concurrent programs, data-fix scripts, and interfaces that perform bulk inserts, index builds, or large DML against tablespaces that may approach their space limits. In such code, a developer may register the operation for resumable execution and then call SET_TIMEOUT to define an appropriate grace period, while a DBA monitoring a stalled job can query the session timeout or invoke ABORT to release a session that will never succeed. ETRM records that the package is referenced by one other package, indicating limited but real dependency within the EBS codebase. The timeout values themselves are expressed in seconds, and the effective scope of SET_TIMEOUT is the individual session, so default behaviour for the whole instance must be established through database initialisation parameters rather than through this package alone.