cancel
Showing results for 
Search instead for 
Did you mean: 

Can't serialize access for this transaction sender JDBC adapter

Former Member
0 Kudos

Hi Guys,

In a JDBC to IDoc XI Interface, the JDBC sender adapter fetches data from an Oracle database successfully, however, it returns the following error when trying to update the data in the database: "java.sql.SQLException:ORA-08177: can't serialize access for this transaction. For details, contact your database server vendor."

The trasaction isolation level in the Advanced tab of the sender JDBC aapter is set to "serializable" and the update SQL statement is a bit complex:

UPDATE  dbtable set  f1 = 2 where f1 = 0 and (f2, f3 ) in (SELECT * FROM (SELECT DISTINCT f2, f3 FROM dbtable WHERE f1 = 0) WHERE ROWNUM <= 50)

Could you please advise? Thanks.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Set the isolation level to "Read Committed". This is the default for Oracle, and in your case, there is no disadvantage to use that (lower) isolation level. Always use the lowest possible level to avoid unnecessary DB resource usage.

CSY

Answers (2)

Answers (2)

Shabarish_Nair
Active Contributor
0 Kudos

Serializable is the highest setting. For it to work, your DB should support that level. You can go back to your DB admin and check with them. Also as mentioned, try a different level.

rajasekhar_reddy14
Active Contributor
0 Kudos

Hi ,

Change Trasaction isolation level to Read_commited and try.

But i dont think you need Trsaction isolation level configuration,this configuration required only when you are running  parllel trasaction which are dependent.

Regards,

Raj