Home » RDBMS Server » Networking and Gateways » ORA-02050: transaction
ORA-02050: transaction [message #185213] Mon, 31 July 2006 10:09 Go to next message
Messages: 6
Registered: July 2006
Location: USA
Junior Member
I got this message in alert.log file,I think there was a network problem between two server, but how can i find? that which user was trying to do DML on this database and was faild?

Thu Jul 27 16:39:15 2006
Error stack returned to user:
ORA-02050: transaction 9.47.349209 rolled back, some remote DBs may be in-doubt
ORA-02068: following severe error from INV
ORA-03113: end-of-file on communication channel
Thu Jul 27 16:39:15 2006
DISTRIB TRAN TINV.WORLD.755384e2.9.47.349209
is local tran 9.47.349209 (hex=09.2f.55419))
delete pending collecting tran, scn=4292562671514 (hex=3e7.70ac579a)
Thu Jul 27 16:39:35 2006
Error 2068 trapped in 2PC on transaction 2.8.323579. Cleaning up.
Thu Jul 27 16:39:35 2006
DISTRIB TRAN TINV.WORLD.755384e2.2.8.323579
is local tran 2.8.323579 (hex=02.08.4effb)
insert pending collecting tran, scn=4292562671526 (hex=3e7.70ac57a6)
Re: ORA-02050: transaction [message #186135 is a reply to message #185213] Sun, 06 August 2006 06:53 Go to previous messageGo to next message
Messages: 460
Registered: July 2005
Location: Stockton, California - US...
Senior Member
Check dba_2pc_pending table, you will see there is 1 row returned
with same local_tran_id as above: 3.65.429 , the status is collecting.

Remove the pending transaction by:

execute dbma_transaction.purge_lost_db_entry('3.65.429 ');

It should fix the error.

For some reason, the distributed transaction did not finish properly,
it ended with "collecting" status. The reco process tried to recover
the transaction periodicly but failed, thus error logged into alert log
and trace file. The best way to clean it is using above command.


Before you begin, make note of the local transaction ID, <local_tran_id>, from
the error message reported.

1. Determine if you can attempt a commit or rollback of this
transaction. You can do the following select to help determine what
action to take:

SQL> select state, tran_comment, advice from dba_2pc_pending
where local_tran_id = '<local_tran_id>';

Review the TRAN_COMMENT column as this could give more information
as to the origin of the transaction or what type of transaction it was.

Review the ADVICE column as well. Many applications prescribe advice
about whether to force commit or force rollback the distributed
transaction upon failure.

2. Commit or rollback the transaction.

To commit:

SQL> commit force '<local_tran_id>';

To rollback:

SQL> rollback force '<local_tran_id>';

WARNING: Step 3 (purge_lost_db_entry) and Step 4 should ONLY be used
when the other database is lost or has been recreated.
Any other use may leave the other database in an unrecoverable or
inconsistent state.
Re: ORA-02050: transaction [message #187275 is a reply to message #185213] Fri, 11 August 2006 10:37 Go to previous messageGo to next message
Messages: 6
Registered: July 2006
Location: USA
Junior Member
Thanks for your reply....

I checked dba_2pc_pending table on my local database, but there was 0 row.
there was not a single row...

I had error on Jul 27 16:39:15 2006

I was checking this table after your reply, so couldn't I find this row?

Re: ORA-02050: transaction [message #195560 is a reply to message #187275] Fri, 29 September 2006 08:09 Go to previous message
Messages: 1
Registered: September 2006
Junior Member

I was wondering if anyone else can respond with some light on this thread. I have had the exact same issue this morning.
I had the ORA-02050 and when I queried the table to find the transaction details there are no rows to find. I'm thinking that the transaction was finally recoverd and then automatically cleaned up, but I'd like to make sure.

Previous Topic: Limiting user access using connection manager
Next Topic: connectivity through internet without any web server
Goto Forum:

Current Time: Tue Jan 17 22:14:11 CST 2017

Total time taken to generate the page: 0.18941 seconds