Search Results dbms_reputil




Overview

SYS.DBMS_REPUTIL is an Oracle-supplied PL/SQL package that forms part of the replication infrastructure underpinning Oracle E-Business Suite. In the EBS 12.1.1 and 12.2.2 architectures, it is owned by the SYS schema and is deployed as a VALID database object. Although it resides in the core database rather than in the APPS schema, its behavior directly influences how EBS manages distributed and multi-tier replication semantics, particularly around the Materialized View and Advanced Replication features that historically supported multi-node EBS deployments and Mobile Field Service synchronization.

The package is classified under the API classification OTHER within the ETRM metadata, indicating it is not a business-facing API but rather a low-level database service. Its primary purpose is to expose utilities for controlling replication state, managing global naming context, and providing aggregation and conflict-resolution helper functions used by the broader replication toolchain. It is referenced by DBMS_DEFER_DEFINER, DBMS_DEFER_SYS_DEFINER, DBMS_RECTIFIER_DIFF_INTERNAL, DBMS_REPCAT_MIG_INTERNAL, and DBMS_REPCAT_UTL, confirming its role as a foundational dependency for Oracle's replication catalog packages.

Key Procedures and Functions

The documented interface exposes thirty-two procedures and functions. The most operationally significant are those governing replication state. REPLICATION_ON and REPLICATION_OFF toggle the replication engine, while REPLICATION_IS_ON returns the current state so callers can branch logic accordingly. Closely related are RECURSION_ON and RECURSION_OFF, which control whether nested replication triggers are permitted to fire, preventing recursive propagation during bulk operations.

Name and context management is handled by GLOBAL_NAME and SET_GLOBAL_NAME, which read and assign the global database name used in replication messaging. FROM_REMOTE and CANONICALIZE support the interpretation of remote-origin data and normalization of identifiers arriving from other nodes. REP_BEGIN and REP_END bracket replication-aware transactions.

Conflict resolution and aggregation are served by a family of numeric helpers: MINIMUM, MAXIMUM, AVERAGE, ADDITIVE, DISCARD, and OVERWRITE. These implement the standard replication conflict-resolution methods, allowing replicated column values to be merged deterministically. APPEND_SITE_NAME and APPEND_SITE_NAME_NC extend identifiers with the originating site name, with the NC variant providing a non-canonicalized form. GET_CONSTRAINT_NAME retrieves constraint identifiers needed during deferred transaction resolution. All of these are invoked internally by the replication catalog rather than directly by application code.

Tables Accessed

The ETRM metadata does not enumerate underlying tables accessed via APPS synonyms for this package. As a SYS-owned replication utility, DBMS_REPUTIL operates primarily against Oracle replication catalog views and SYS-owned dictionary objects rather than EBS application tables. Its aggregation and conflict-resolution routines act on replicated column values supplied by callers, not on stored EBS transactional data directly.

Usage Notes

DBMS_REPUTIL is not intended for direct invocation from EBS Forms, concurrent programs, or general custom code. It is invoked internally by Oracle's replication packages and by any EBS feature that historically relied on Advanced Replication. In modern 12.2.2 environments where replication is de-emphasized, the package remains present to satisfy dependency chains and to support legacy Mobile Field Service and multi-org synchronization paths. Customizations should avoid calling it directly; instead, use supported EBS APIs. Any direct use risks inconsistent replication state and is unsupported.