can't serialize access for this transaction

Discussions

EJB programming & troubleshooting: can't serialize access for this transaction

  1. Hi,
    I would like to know how the transaction works ,actullay if the row is updated by a thread and another thread also requried to read the value from the DB(oracle).Since the oracle supports ReadCommited (Isolation level).I face the ORA-08177: can't serialize access for this transaction problem.
    So could any one can help me to get about how tranaction works with connection ojbects .

    So could any onel help me solve above error
    Thanks in advance..
  2. The way to recover from an ORA-08177 is to reapply the failing transaction (all of it). Thats means you must rollback the transaction and then retry. This is a normal part of concurrently updating Oracle. Changing the isolation level to 'read_committed' will stop these errors from being reported, however you will then start to get lost updates.

    You need to analyse what the transaction is actually doing, i.e. the scope of the transaction. You need to identify the records that form part of the transaction and why there is contention. Once you understand what is going on, then you can decide how to deal with the problem. The solution may involve the way the SQL is coded or it may involve changes at the bean and deployment descriptor level.

    Regards,
    Stephen