ORA-02049

I did increased time to 150 . what should i do
The following error has occurred:
ORA-02049: timeout: distributed transaction waiting for lock
ORA-02063: preceding line from OPSWEB.US.ORACLE.CO

mehakAsked:
Who is Participating?
 
konektorConnect With a Mentor Commented:
check not only INIT.ORA parmater DISTRIBUTED_LOCK_TIMEOUT which defines timeout for distributed transactions, but check it's actual value in v$parameter table.
0
 
DrJekyllConnect With a Mentor Commented:
From MetaLink

Error:  ORA 2049 Text:   timeout: distributed transaction waiting for lock
-------------------------------------------------------------------------------
Cause:  Exceeded <Parameter:DISTRIBUTED_LOCK_TIMEOUT> seconds waiting for lock.
Action: treat as a deadlock    ***
Important: The notes below are for experienced users - See [NOTE:22080.1]  Explanation:  Ignore the "Action" above - this is non-sense.        
Basically ORA 2049 is signalled if:          
a) you are waiting on another sessions TX enqueue            (Eg: usually you are waiting for a row lock)     AND  
b) you are performing a distributed operation.            
 Eg: You are using a DB link for something, even if it is only a select AND  
c) You wait for longer than 'distributed_lock_timeout'      The use of a DB Link opens you up to distributed rules of operation      even if you only READ from it.       You can either increase the timeout OR handle the ORA 2049 as a 'try again'  exception that is not fatal. This mechanism exists to prevent deadlock  so any handling of 'TRY AGAIN' should include an escape clause to prevent  deadlock.  

Another MetaLink Note:

The distributed_lock_timeout parameter was obsoleted because the default value of 60 seconds was sufficient in most applications. If this value needs to be increased, add the _distributed_lock_timeout parameter (note the leading underscore) in your INIT.ORA file. The value is still in seconds.
0
 
morphmanCommented:
What is managing/initiating your distributed transaction? A transaction manager?

Are you running on multiple transaction domains with multiple gateways? These are very sucseptable to deadlocks, as the gtrid(global transaction id) is not repliacted across all gateways.

0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.