Oracle7 Server Messages
02040-02099: Distributed Transactions
This section lists messages generated during distributed transactions.
ORA-02040 remote database name does not support two-phase commit
Cause: | A distributed update of more than one database was attempted, but the named database does not support the prepare phase of the two-phase commit, as determined by its logon transaction traits. The transaction was rolled back. | |
Action: | Do not attempt to update the named database, unless it is the only database updated in the transaction. Distributed updates of more than one database in a single transaction can be performed only if all databases support the two-phase commit mechanism. | |
ORA-02041 client database did not begin a transaction
Cause: | An update occurred at a coordinated database without the coordinator beginning a distributed transaction. This may happen if a stored procedure commits and then performs updates, and the stored procedure is invoked remotely. It could also happen if an external transaction monitor violates the XA protocol. | |
Action: | If the cause is the former, check that any commit is not followed by an update. | |
ORA-02042 too many distributed transactions
Cause: | The distributed transaction table is full because too many distributed transactions are active. | |
Action: | Increase the DISTRIBUTED_TRANSACTIONS parameter in the initialization parameter file, shut down and restart Oracle, or run fewer transactions. If it is certain there are not too many concurrent distributed transactions, this may be an internal error. In this case, contact customer support. Shutting down and restarting the instance could be a work-around. | |
ORA-02043 must end current transaction before executing command
Cause: | A transaction is in progress and one of the following commands is issued: COMMIT FORCE, ROLLBACK FORCE, or ALTER SYSTEM ENABLE DISTRIBUTED RECOVERY in single process mode. | |
Action: | COMMIT or ROLLBACK the current transaction and retry the command. | |
ORA-02044 transaction manager login denied: transaction in progress
Cause: | A remote transaction manager tried to log in while a distributed transaction is in progress. A protocol error occurred in the remote transaction manager. | |
Action: | End the current transaction. | |
ORA-02045 too many local sessions participating in global transactions
Cause: | There are too many sessions at this site to accommodate this transaction. | |
Action: | Use an existing database link so that another session need not be created at the remote site. | |
ORA-02046 distributed transaction already begun
Cause: | This is an internal error not normally encountered. A server session received a BEGIN_TRAN remote procedure call before finishing with a previous distributed transaction. | |
Action: | Contact customer support. | |
ORA-02047 cannot join the distributed transaction in progress
Cause: | This can happen only when attempting to update an Oracle Version 6 and an Oracle7 database in the same transaction, because either | |
- A transaction is in progress against a remote database that does not support two-phase commit.
- Updates are pending and an attempt was made to update a different database that does not support two-phase commit.
Action: | Complete the current transaction before attempting the action that caused
the error. | |
ORA-02048 attempt to begin distributed transaction without logging on
Cause: | The client program did not issue a distributed transaction login. | |
Action: | This is an internal error, contact customer support. | |
ORA-02049 time-out: distributed transaction waiting for lock
Cause: | The time to wait on a lock in a distributed transaction has been exceeded. This time is specified in the initialization parameter DISTRIBUTED_LOCK_TIMEOUT. | |
Action: | This situation is treated as a deadlock and the statement was rolled back. To set the time-out interval to a longer interval, adjust the initialization parameter DISTRIBUTED_LOCK_TIMEOUT, then shut down and restart the instance. | |
ORA-02050 transaction num rolled back, some remote DBs may be in-doubt
Cause: | There was a network failure or a remote failure during the two-phase commit. | |
Action: | Notify the database administrator. The remote databases will automatically resynchronize when the failure is repaired. | |
ORA-02051 another session in same transaction failed
Cause: | A session at the same site with the same global transaction identification failed. | |
Action: | No action is necessary; the transaction will automatically recover. | |
ORA-02052 remote transaction failure at name
Cause: | There was some error in a remote transaction at the named database link. | |
Action: | More descriptive messages will follow. Correct the problem specified in the following messages and retry the operation. | |
ORA-02053 transaction num committed, some remote DBs may be in-doubt
Cause: | There was a network failure or a remote failure during the two-phase commit. | |
Action: | Notify the database administrator. The remote databases will resynchronize automatically when the failure is repaired. | |
ORA-02054 transaction num in-doubt
Cause: | There was a network failure or a remote failure in the two-phase commit. | |
Action: | Notify the database administrator. The remote databases will resynchronize automatically when the failure is repaired. Monitor the DBA_2PC_INDOUBT and DBA_2PC_INCONSISTENT tables for the outcome and resubmit the transaction, if necessary. | |
ORA-02055 distributed update operation failed; rollback required
Cause: | A failure during a distributed update operation may not have rolled back all effects of the operation. Since some sites may be inconsistent with others, the transaction must roll back to a savepoint or roll back entirely. | |
Action: | Roll back to a savepoint or roll back the entire transaction and resubmit the rolled-back statements. | |
ORA-02056 2PC: str: bad two-phase command number num from name
Cause: | There was a two-phase commit protocol error. | |
Action: | The transaction may automatically recover. Monitor the DBA_2PC_INDOUBT and DBA_2PC_INCONSISTENT tables to determine the resolution. Enter the transaction again, if necessary. Contact customer support, if necessary. | |
ORA-02057 2PC: str: bad two-phase recovery state number num from name
Cause: | An internal error in the two-phase recovery protocol occurred. | |
Action: | Contact customer support. | |
ORA-02058 no prepared transaction found with ID num
Cause: | A COMMIT FORCE was attempted on a transaction, but the transaction with LOCAL_TRAN_ID or GLOBAL_TRAN_ID was not found in the DBA_2PC_INDOUBT table in prepared state. | |
Action: | Check the DBA_2PC_INDOUBT table to ensure the proper transaction ID is used and attempt the commit again. | |
ORA-02059 ORA-CRASH-TEST-n in commit comment
Cause: | This is a special comment used to test the two-phase commit. | |
Action: | Do not use this special comment unless working with customer support. | |
ORA-02060 SELECT FOR UPDATE specified a join of non-collocated tables
Cause: | An attempt was made to join tables in different remote databases in a SELECT... FOR UPDATE statement. | |
Action: | Joined tables in a SELECT statement with the FOR UPDATE clause must reside at the same database. Simplify the SELECT... FOR UPDATE statement so that it joins only tables in the same database. | |
ORA-02061 lock table specified list of non-collocated tables
Cause: | An attempt was made to lock more than one table in different remote databases in a LOCK TABLE statement. Tables in a LOCK TABLE statement must reside at the same database. | |
Action: | Issue multiple LOCK TABLE commands. | |
ORA-02062 distributed recovery received DBID num, expected num
Cause: | A database link at the coordinator point no longer points to the expected database. The database link may have been redefined, or a different database may have been mounted. | |
Action: | Check the database link at the coordinator point to see if it was redefined. If so, contact the database administrator for the remote database to check whether the link still references a valid database. If the link changed, recreate it to reference a valid database at the remote site. | |
ORA-02063 preceding str from name
Cause: | An Oracle error message was received from a remote database link. | |
Action: | Refer to the preceding messages. Correct the problem mentioned in the preceding messages and try the operation again. | |
ORA-02064 iterated or long remote update with subquery not supported
Cause: | One of the following unsupported operations was attempted: | |
- an array execute of a remote update with a subquery that references a database link
- an update of a long column with bind variable and an update of a second column with a subquery that references both a database link and a
bind variable
- a commit in a coordinated session issued from a remote procedural call with OUT parameters
Action: | Simplify the remote update statement. | |
ORA-02065 illegal option for ALTER SYSTEM
Cause: | The option specified for ALTER SYSTEM is not supported. | |
ORA-02066 missing or invalid MTS_DISPATCHERS text
Cause: | A character string literal was expected, but not found, in the ALTER SYSTEM SET MTS_DISPATCHERS command. | |
Action: | Place the string literal containing the dispatcher's specification in the ALTER SYSTEM SET MTS_DISPATCHERS command. | |
ORA-02067 transaction or savepoint rollback required
Cause: | A failure occurred, probably in a trigger or stored procedure with multiple remote updates. Some sites in the transaction may be inconsistent, so the previous Oracle call cannot be executed, and the transaction cannot
be committed. | |
Action: | Roll back to a previous savepoint or to the beginning of the transaction. Then resubmit the rolled-back statements. | |
ORA-02068 following severe error from name
Cause: | A severe error, a disconnect or fatal Oracle error, was received from the given database link. See the accompanying messages for a more detailed description of the problem. | |
Action: | Contact the remote system administrator to determine the cause of the remote problem and the estimated time of the problem's resolution. | |
ORA-02069 global_names parameter must be set to TRUE for this operation
Cause: | A remote mapping of the statement is required but cannot be done because the parameter GLOBAL_NAMES is not set to TRUE. | |
Action: | Issue the statement ALTER SESSION SET GLOBAL_NAMES = TRUE,
if possible. | |
ORA-02070 database "name" does not support capability name in this context
Cause: | The remote database does not support the named capability in the context in which it was used. | |
Action: | Simplify the SQL statement. | |
ORA-02071 error initializing capabilities for remote database name
Cause: | Oracle could not load the capability table from the named remote database. | |
Action: | Contact customer support concerning the remote SQL*Connect product. | |
ORA-02073 sequence numbers not supported in remote updates
Cause: | Sequence numbers may not be used in INSERTS, UPDATES, or DELETES on remote tables. | |
Action: | Perform the operation without specifying a sequence number. | |
ORA-02074 cannot COMMIT or ROLLBACK in a distributed transaction
Cause: | A COMMIT or ROLLBACK was attempted from a session other than the parent of a distributed transaction. | |
Action: | Only the parent session can issue a COMMIT or ROLLBACK. | |
ORA-02076 sequence not co-located with updated or long column
Cause: | All referenced sequences must be located on the same node as the updated table or the long column. | |
Action: | Correct the problem and then reissue the statement. | |
ORA-02077 selects of long columns must be from co-located tables
Cause: | All tables returning values of long columns in a SELECT statement must be located at the same node. | |
Action: | Correct the problem, then reissue the statement. | |
ORA-02078 invalid setting for ALTER SYSTEM FIXED_DATE
Cause: | An invalid value was used. | |
Action: | Use a correct value. | |
ORA-02079 no new sessions may join a committing distributed transaction
Cause: | A call to UPI2BG was issued in a session for a transaction that has begun to commit in a different branch. That is, a call to UPI2EN was issued for a branch of the same transaction in another session. This can only happen when using an external transaction manager. | |
Action: | Contact customer support. | |
ORA-02080 database link is in use
Cause: | A transaction is active or a cursor is open on the database link. | |
Action: | Before closing a database link, you must first close all cursors and then end all transactions that use it. | |
ORA-02081 database link is not open
Cause: | An attempt was made to use a database link that is not currently open. | |
Action: | Resolve network problems or contact the remote database administrator to determine if the remote database's problem has been fixed. Contact the local database administrator to determine if network problems have been resolved. Wait until the link is open and try the operation again. | |
ORA-02082 a loop-back database link must have a connection qualifier
Cause: | An attempt was made to create a database link with the same name as the current database. | |
ORA-02083 database name has illegal character str
Cause: | The database name supplied contains an invalid character. For example, there can be no periods, semicolons, single quotes, double quotes, blanks, or non-printable characters in the database name. See Oracle7 Server Reference for naming rules. | |
Action: | Specify a valid database name. | |
ORA-02084 database name is missing a component
Cause: | The complete database name was not given | |
Action: | Specify the full database name. | |
ORA-02085 database link name connects to name
Cause: | The database link attempted to connect to a database with a different name. The name of the database link must be the same name as the name of
the database. | |
Action: | Create a database link with the same name as the database to which it connects. | |
ORA-02086 database link name is too long
Cause: | The name of the database or database link is too long. Database and database link names can be no longer than 128 characters. | |
Action: | Specify the correct database or database link name or specify a name with fewer characters. | |
ORA-02087 object locked by another process in same transaction
Cause: | In a Parallel Server environment, a database link that loops back to the same instance is being used, and one session is trying to convert a lock that was obtained by the other session. | |
Action: | Obtain a more restrictive lock first. For example if session 1 needs a SHARE lock, and session 2 needs an EXCLUSIVE lock, make sure that the EXCLUSIVE lock is obtained first. Otherwise, use the same session to access the object. | |
ORA-02088 distributed database option not installed
Cause: | The distributed database option is not installed at this site, so the requested operation is not possible. | |
Action: | Contact Oracle Corporation about obtaining the distributed database option. | |
ORA-02089 COMMIT is not allowed in a subordinate session
Cause: | COMMIT was issued in a session that is not the two-phase commit
global coordinator. | |
Action: | Issue commits only at the global coordinator. | |
ORA-02091 transaction rolled back
Cause: | The distributed transaction is assigned to the system rollback segment and is trying to get into the prepared state, but the required number of non-PREPARED slots are not available, so the transaction is rolled back. | |
If the transaction aborted at a remote site, only ORA-02091 will be seen. If the transaction aborted at the host site, then both ORA-02091 and ORA-02092 will be seen.
Action: | Complete the current transaction and then do the operation required. | |
ORA-02092 out of transaction table slots for distributed transaction
Cause: | The distributed transaction is assigned to the system rollback segment and is trying to get into the prepared state, but the required number of non-PREPARED slots are not available, so the transaction is rolled back. | |
If the transaction aborted at a remote site, only ORA-02091 will be seen. If the transaction aborted at the host site, then both ORA-2091 and ORA-2092 will
be seen.
Cause: | Add a rollback segment and do the operation again. | |
ORA-02093 TRANSACTIONS_PER_ROLLBACK_SEGMENT name more than maximum possible.
Cause: | The value of the initialization parameter specified is greater than allowed on this port. | |
Action: | Use the default value or reduce it to less than the maximum. | |
ORA-02094 replication option not installed
Cause: | The replication option was not installed at this site. Updatable snapshots, deferred remote procedure calls, and other replication features were,
therefore, unavailable. | |
Action: | Install the replication option. The replication option is not part of the Oracle7 Server product and must be purchased separately. Contact an Oracle sales representative if the replication option needs to be purchased. | |
ORA-02095 specified initialization parameter cannot be modified
Cause: | Specified initialization parameter is not modifiable with this option. | |
Action: | Check the DBA guide for information about under what scope the parameter may be modified. | |
For more information about modifying an initialization parameter, see the index entry on "initialization parameters, altering" in Oracle7 Server SQL Reference.
ORA-02096 specified initialization parameter is not modifiable with this option
Cause: | Though the initialization parameter is modifiable, it cannot be modified using the specified command. | |
Action: | Check the DBA guide for information about under what scope the parameter may be modified. | |
For more information about modifying an initialization parameter, see the index entry on "initialization parameters, altering" in Oracle7 Server SQL Reference.
ORA-02098 error parsing index-table reference (:I)
Cause: | An incorrect index-table (:I) syntax was encountered. | |
Action: | This syntax is for Oracle internal use only. | |