Oracle can audit successful calls to your conflict resolution handlers so that you have insight into the frequency and nature of the conflicts that occur.
If you enable the auditing of successful calls to your conflict resolution handlers, you can review this information in the DBA_REPRESOLUTION_STATISTICS data dictionary view.
Use the following programs to enable, disable, and purge these statistics:
DBMS_REPCAT.REGISTER_STATISTICS |
DBMS_REPCAT.CANCEL_STATISTICS |
DBMS_REPCAT.PURGE_STATISTICS |
The REGISTER_STATISTICS procedure enables the collection of data about the successful resolution of update, uniqueness, and delete conflicts. This information is visible in the DBA_REPRESOLUTION_STATISTICS data dictionary view. Here is the specification for this procedure:
PROCEDURE DBMS_REPCAT.REGISTER_STATISTICS (sname IN VARCHAR2, oname IN VARCHAR2);
Parameters are summarized in the following table.
Name |
Description |
---|---|
sname |
Name of the schema to which the replicated table belongs |
oname |
Name of the replicated table |
There are no restrictions on calling REGISTER_STATISTICS.
The REGISTER_STATISTICS procedure may raise the following exceptions:
Name |
Number |
Description |
---|---|---|
missingobject |
-23308 |
Table oname does not exist |
missingschema |
-23306 |
Schema sname does not exist |
This call enables the gathering of conflict resolution statistics for the products table:
BEGIN DBMS_REPCAT.REGISTER_STATISTICS sname => 'SPROCKET', oname => 'PRODUCTS'); END;
The CANCEL_STATISTICS procedure disables the gathering of conflict resolution statistics. Here's the specification:
PROCEDURE DBMS_REPCAT.CANCEL_STATISTICS (sname IN VARCHAR2, oname IN VARCHAR2);
Parameters are summarized in the following table.
Name |
Description |
---|---|
sname |
Name of the schema to which the replicated table belongs |
oname |
Name of the replicated table |
There are no restrictions on calling CANCEL_STATISTICS.
The CANCEL_STATISTICS procedure may raise the following exceptions:
Name |
Number |
Description |
---|---|---|
missingobject |
-23308 |
Table oname does not exist |
missingschema |
-23306 |
Schema sname does not exist |
statnotreg |
-23345 |
Statistics have not been registered for object oname |
This call disables the gathering of conflict resolution statistics for the products table:
BEGIN DBMS_REPCAT.CANCEL_STATISTICS( sname => 'SPROCKET', oname => 'PRODUCTS;); END;
If you are collecting conflict resolution statistics, you can purge this information periodically using the PURGE_STATISTICS procedure. Here is the specification:
PROCEDURE DBMS_REPCAT.PURGE_STATISTICS (sname IN VARCHAR2, oname IN VARCHAR2, start_date IN DATE, end_date IN DATE);
Parameters are summarized in the following table.
Name |
Description |
---|---|
sname |
Name of the schema that owns oname. |
oname |
Table whose conflict resolution statistics are to be deleted. |
start_date |
Beginning of date range for which statistics are to be deleted. If NULL, all entries less than end_date are deleted. |
end_date |
End of date range for which statistics are to be deleted. If NULL, all entries greater than end_date are deleted. |
There are no restrictions on calling PURGE_STATISTICS.
The PURGE_STATISTICS procedure may raise the following exceptions:
Name |
Number |
Description |
---|---|---|
missingobject |
-23308 |
Object oname does not exist |
missingschema |
-23306 |
Schema sname does not exist |
This example purges all records collected for the products table between 01-Jan-1998 and 01-Feb-1998:
BEGIN DBMS_REPCAT.PURGE_STATISTICS( sname => 'SPROCKET', oname => 'PRODUCTS', start_date => '01-JAN-1998', end_date => '01-FEB-1998'); END;
16.5 Assigning Resolution Methods with DBMS_REPCAT | 17. Deferred Transactions and Remote Procedure Calls |
Copyright (c) 2000 O'Reilly & Associates. All rights reserved.