C++ CSS HTML Java JavaScript MySQL Oracle PERL PHP SQL Unix VBScript XHTML XML Сети
[Chapter 17] Deferred Transactions and Remote Procedure Calls
 
PreviousChapter 17Next
 

17. Deferred Transactions and Remote Procedure Calls

Contents:
About Deferred Transactions and RPCs
DBMS_DEFER_SYS: Managing Deferred Transactions
DBMS_DEFER: Building Deferred Calls
DBMS_DEFER_QUERY: Performing Diagnostics and Maintenance

packages used to create and manipulate deferred calls are available for direct use in your applications. You will use the packages described in this chapter for deferred transactions and RPCs.

DBMS_DEFER_SYS

Performs administrative tasks such as scheduling, executing, and deleting queued transactions.

DBMS_DEFER

Builds deferred calls.

DBMS_DEFER_QUERY

Provides access to parameters passed to deferred calls, primarily for diagnostic purposes.

NOTE: Users must have explicit EXECUTE privileges on DBMS_DEFER in order to create deferred calls.

17.1 About Deferred Transactions and RPCs

17.1.1 About Remote Destinations

Every remote procedure call has to be executed somewhere, and Oracle offers several methods of specifying where.

If you are using the data dictionary view. Chapter 15, Advanced Replication, for details on using DBMS_REPCAT, which performs most replicated environment administration operations.

  1. The sites specified in the nodes parameter to DBMS_DEFER.TRANSACTION, described later in this chapter.

  2. The sites specified in the DEFDEFAULTDEST data dictionary view, described later in this chapter (Table 17.4).

an exception.

17.1.2 Data Dictionary Views

There are eight data dictionary views (see Table 17.1 the packages associated with deferred calls reference and/or modify the data in these views.

Tables 17-2 through 17-9 provide details about the contents of these views.


Table 17.1: Data Dictionary Views Associated with Deferred Calls

View Name

Description

DEFCALL

Contains information about all deferred RPCs. Queries SYSTEM.DEF$_CALL table.

DEFCALLDEST

DEFDEFAULTDEST

Contains the default destinations for deferred RPCs. Queries SYSTEM.DEF$_DEFAULTDEST.

DEFERROR

Contains error information for deferred calls that could not be applied at their destination. Queries SYSTEM.

DEF$_ERROR.

DEFERRORCOUNT

Contains the count of errors for each destination. Queries SYSTEM.DEF$_ERROR.

DEFSCHEDULE

Contains information about the scheduling of deferred jobs. Queries SYSTEM.DEF$_DESTINATION and SYS.JOB$.

DEFTRAN

Contains information about all deferred calls. Queries SYSTEM.DEF$_CALL and SYS.USER$.

DEFTRANDEST


Table 17.2: Columns in DEFCALL Data Dictionary View

Column Name

Description

CALLNO

Unique ID of call at deferred_tran_db

DEFERRED_TRAN_DB

Global name of database that originated the call

DEFERRED_TRAN_ID

Unique ID of the transaction

SCHEMANAME

Schema that owns the package

PACKAGENAME

Name of the package

PROCNAME

Name of the procedure within the package

ARGCOUNT

Number of arguments passed to the procedure


Table 17.3: Columns in DEFCALLDEST Data Dictionary View

Column Name

Description

CALLNO

Unique ID of call at deferred_tran_db.

DEFERRED_TRAN_ID

Unique ID of the transaction. Note that each deferred_tran_id has one or more calls.

DEFERRED_TRAN_DB

Global name of database that originated the call.

DBLINK

Global name of the destination database.


Table 17.4: Columns in DEFDEFAULTDEST Data Dictionary View

Column Name

Description

DBLINK

Global name of the destination database


Table 17.5: Columns in DEFERROR Data Dictionary View

Column Name

Description

DEFERRED_TRAN_DB

Global name of the database that originated the RPC

DEFERRED_TRAN_ID

ID of the transaction originating or copying the deferred RPC

CALLNO

Unique ID of call at deferred_tran_db

DESTINATION

Database link used to specify the destination database

ERROR_TIME

Time the error occurred

ERROR_NUMBER

Oracle error number

ERROR_MSG

Error message text


Table 17.6: Columns in DEFERRCOUNT Data Dictionary View

Column Name

Description

ERRCOUNT

Number of errors in deferred RPC calls to destination

DESTINATION

Global name of destination database


Table 17.7: Columns in DEFSCHEDULE Data Dictionary View

Column Name

Description

DBLINK

Global name of the database for which pushes of deferred RPC calls is scheduled

JOB

Number of the job (job column in DBA_JOBS)

INTERVAL

Date expression that determines how often the job runs

NEXT_DATE

Next time the job is scheduled to run

LAST_DATE

Last time the job ran

DISABLED

Y if propagation to destination is disabled, otherwise N

LAST_TXN_COUNT

Number of transactions pushed last time job ran

LAST_ERROR

Oracle error number from the most recent push

LAST_MSG

Error message text from the most recent push


Table 17.8: Columns in DEFTRAN Data Dictionary View

Column Name

Description

DEFERRED_TRAN_ID

ID of the transaction that originated or copied the deferred RPCs.

DEFERRED_TRAN_DB

Global name of the database that originated or copied the deferred RPCs.

ORIGIN_TRAN_ID

ID of the transaction that originated the deferred RPCs.

ORIGIN_TRAN_DB

Global name of the database that originated the deferred RPCs.

ORIGIN_USER

USERID of user originating deferred RPC calls.

DELIVERY_ORDER

SCN of the deferred transaction in the queue.

DESTINATION_LIST

or DBMS_DEFER.COPY procedures.

START_TIME

Start time of the origination transaction.

COMMIT_COMMENT

User-supplied comments.


Table 17.9: Columns in DEFTRANDEST Data Dictionary View

Column Name

Description

DEFERRED_TRAN_ID

ID of the transaction to propagate to database specified by dblink

DEFERRED_TRAN_DB

Global name of the database that originated the deferred transaction

DBLINK

Global name of the destination database


PreviousHomeNext
16.6 Monitoring Conflict Resolution with DBMS_REPCATBook Index17.2 DBMS_DEFER_SYS: Managing Deferred Transactions

Главная