ORA 2049 error on Oracle 9i2 Solaris 9 [message #139617] |
Wed, 28 September 2005 17:22 |
spcnlkumar
Messages: 1 Registered: September 2005
|
Junior Member |
|
|
A process runs on a split database environment - connecting locally to the database db1 and remotely to the database db2 (via database links). It deletes a bunch of rows in a table A in database db1 for a specific account and updates another table B in the database db2 for the same account. The access to table B is via a view (with a select clause to read all the rows of the table B via the database link).
When we have 8 processes running at the same time, all of them die with the error "ORA-02049: timeout: distributed transaction waiting for lock" one after another after processing for some time.
I know that An ORA 2049 is signalled if
o you are blocked
o you are in a distributed transaction (you are using a DB link, even just to
read)
o you wait for longer than distributed lock timeout
In this case, the processes update distinct rows on the table B in the remote database db2. Also, even if only one process is run, it dies eventually with the above error after running for a long time. It seems to die immediately after the update on the table B in the remote database.
I read that this could be due to ITL shortage deadlock. But, why would the error come even when only one process is running ?
I found that the PCTFREE was 20 and INITTRANS was 1 on the table B in the remote database db2. Will increasing these values have any impact ?
Any help would be greatly appreciated.
|
|
|
|