cancel
Showing results for 
Search instead for 
Did you mean: 

JDBC Outbound Adapter Problems

Former Member
0 Kudos

Hello

We have a problem with our Outbound JDBC Adapter. This Adapter writes IDOC's into a ORACLE-Database.

After a certain amount of records the procedure breaks down with the error: ORA-08177: can't serialize access for this transaction.

Here is the configuration of the adapter out of the adapter-engine:

    1. jdbc adapter java class

classname=com.sap.aii.messaging.adapter.ModuleXMB2DB

mode=XMB2DB_XML

##Adress for XMB endpoint

XMB.httpPort=8210

XMB.httpService=/db/Receiver

##DB Adapter specific parameters (example for SQL-Server, see docu)

db.jdbcDriver=oracle.jdbc.driver.OracleDriver

db.connectionURL=jdbc:oracle:thin:sapxi/sapxi@migzx100.migros.ch:1521:gdmgbbw

Accepted Solutions (0)

Answers (1)

Answers (1)

Andrzej_Filusz
Contributor
0 Kudos

Hi!!!

1. Which version of Oracle database do you use?

2. Are you sure that your db was patched? There is a patch for a bug that causes ORA-08177.

3. Which transaction isolation level do you use? I suppose that SERIALIZABLE, cos Oracle generates ORA-08177 error when a serializable transaction tries to update or delete data modified by a transaction that commits after the serializable transaction began.

Regards,

Andrzej Filusz

Former Member
0 Kudos

Hi!

We are working with two, adapters. One is of then system XI D15 with patchlevel SP5 and one is XI P15 with patchlevel SP3. We are going with the two adapters to the same Database Oracle Version 8.1.7.4. When i send the idocs from the XI D15 to the adapter D15 then I get the error message. When i send the idoc from XI D15 to the adapter P15 then is it running.

Andrzej_Filusz
Contributor
0 Kudos

Hi!!!

I don't know if it's a reason of your problems, but there were problems with 8.1.7.4 (and 9.2.0.3) which gave ORA-8177 errors. It was fixed in 9.2.0.4 and 10G.

Have you got access to the database in one of the above versions? Can you try with it?

If not then maybe you have a database with lower patch level than 8.1.7.4 (8.1.7.3 or below)?

Regards,

Andrzej Filusz

Former Member
0 Kudos

Hi!

Thank for your fast answer. What i can say is that we are testing with two different Adapters.

Look there is the results from the test's, i don't now what is the Problem between Sp3 and Sp5

SAP P42 - Orders - XI D15 Sp3 - Orders - Adapter D15 Sp5 = no Problem Record

Quantity < ca. 50

SAP P42 - Orders - XI D15 Sp5 - Orders - Adapter D15 Sp5 = Error ORAORA-08177 Record

Quantity> ca. 800

SAP P42 - Orders - XI D15 Sp3 - Orders - Adapter P15 Sp3 = No Problem Record

Quantity > ca. 800

The answer from Sap OSS-Message is the problem is SERIALIZABLE isolation level and we are must use the command READ_COMMITTED, but this command you can only use by the session. And i can not go to this insert session, this are in adapter jar from SAP.

Regards, Thomas Neuhaus

Andrzej_Filusz
Contributor
0 Kudos

Hi!!!

Unfortunately sometimes you can receive the same error also using READ_COMMITTED isolation level.

Could you remove any indexes from the table you use to insert your data and test your scenario?

Regards,

Andrzej Filusz

Former Member
0 Kudos

Hi !

I have make some test's today. I copy the adapter from our productive system P15 SP3 to the developers D15 SP6. Then we take the same message and send this from sap p42 to sap xi d15 sp5 to the adapter d15 (copy from p15 sp3) to the same Oracle database and it's working.

SAP P42 - Orders - XI D15 SP6 - Orders - Adapter D15 (copy from P15SP3) = it's working Record > ca. 800

I think we have a problem in the patch sp5.

We found also some different size in the adapter files.

This are the jar- files with different size:

SAPAdapterService.exe

adapter.properties

aii_msg_adapter.jar

aii_msg_runtime.jar

aii_rfcadapter.jar

aii_util_grmg.jar

aii_util_misc.jar

aii_util_rb.jar

inqmyxml.jar

lcrclient.jar

logging.jar

I make tomorow, a test with a adapter sp4.

Regards Thomas Neuhaus

Former Member
0 Kudos

Hi!

I have get a message from SAP Support. There was a developer, his send me solution for my problem. The problem is that at the sp4, is a parameter name db.transactionIsolation default on SERIALIZABLE, this was not in sp3. The solution is that you can change the parameter with 0,1,2,4 und 8

(0 -TRANSACTION_NONE ..

1 - TRANSACTION_READ_UNCOMMITED,

2 - TRANSACTION_READ_COMMITED,

4 - TRANSACTION_REPEATABLE_READ,

8 - TRANSACTION_SERIALIZABLE)

For my problem i must change the parameter to

db.transactionIsolation=2

in my Adapter script and it is running. Great!!!!!

About this Parameter, you can read in the new document SAP XI 2.0 SP5, but i don' t have it. I hope, i get this document from SAP

Regards Thomas Neuhaus