Oracle® Database Advanced Replication Management API Reference 10g Release 1 (10.1) Part Number B10733-01 |
|
|
View PDF |
This function purges pushed transactions from the deferred transaction queue at your current master site or materialized view site.
DBMS_DEFER_SYS.PURGE ( purge_method IN BINARY_INTEGER := purge_method_quick, rollback_segment IN VARCHAR2 := NULL, startup_seconds IN BINARY_INTEGER := 0, execution_seconds IN BINARY_INTEGER := seconds_infinity, delay_seconds IN BINARY_INTEGER := 0, transaction_count IN BINARY_INTEGER := transactions_infinity, write_trace IN BOOLEAN := NULL); RETURN BINARY_INTEGER;
Parameter | Description |
---|---|
purge_method |
Controls how to purge the deferred transaction queue: Specify the following for this parameter to use
Specify the following for this parameter to user
If you use |
rollback_segment |
Name of rollback segment to use for the purge, or |
startup_seconds |
Maximum number of seconds to wait for a previous purge of the same deferred transaction queue. |
execution_seconds |
If > 0, then stop purge cleanly after the specified number of seconds of real time. |
delay_seconds |
Stop purge cleanly after the deferred transaction queue has no transactions to purge for |
transaction_count |
If > 0, then shut down cleanly after purging |
write_trace |
When set to |
Exception | Description |
---|---|
argoutofrange |
Parameter value is out of a valid range. |
executiondisabled |
Execution of purging is disabled. |
defererror |
Internal error. |
When you use the purge_method_quick
for the purge_method
parameter in the DBMS_DEFER_SYS.PURGE
function, deferred transactions and deferred procedure calls may remain in the DEFCALL
and DEFTRAN
data dictionary views after they have been successfully pushed. This behavior occurs in replication environments that have more than one database link and the push is executed to only one database link.
To purge the deferred transactions and deferred procedure calls, perform one of the following actions:
purge_method_precise
for the purge_method
parameter instead of the purge_method_quick
. Using purge_method_precise
is more expensive, but it ensures that the deferred transactions and procedure calls are purged after they have been successfully pushed.purge_method_quick
for the purge_method
parameter, push the deferred transactions to all database links. The deferred transactions and deferred procedure calls are purged efficiently when the push to the last database link is successful.