Name
DBMS_SNAPSHOT.I_AM_A_REFRESH
Synopsis
The I_AM_A_REFRESH function queries the REP$I_AM_A_REFRESH package variable. If this variable is TRUE, then the session is refreshing a snapshot or applying propagated DML to a replicated table. This DML is performed on behalf of a replicated transaction that was initiated at another master—that is, the DML performed by this session will not be replicated because it is the local application of remote DML. I_AM_A_REFRESH is used by numerous replication triggers and procedures to determine whether DML should be replicated.
FUNCTION DBMS_SNAPSHOT.I_AM_A_REFRESH RETURN BOOLEAN;
All row-level replication triggers are after-row triggers. Although a table can have multiple triggers of the same type, you cannot control the order in which they are fired. Therefore, it is safest to use before-row triggers to perform auditing on replicated tables; in this way, you are guaranteed that before-row triggers fire before after-row triggers.
The function does not raise any exceptions, and there are no restrictions on calling it.