cancel
Showing results for 
Search instead for 
Did you mean: 

Database-level error reported by JDBC driver

Former Member
0 Kudos

Hi everyone,

I get an error in my Sender JDBC adapter. I am executing a stored procedure every minute. In total I have 34 JDBC senders for every different database. The error is like below. The problem is in Alert Inbox I cant see the rest of the message. This error occures just once every hour (average). I dont know why and I dont know what the rest of the error is saying.

Any ideas how i can see the rest of the message? And where the error might be?

Note: In communication channel monitoring everything is green.

Database-level error reported by JDBC driver while executing statement 'EXEC [TB

Accepted Solutions (1)

Accepted Solutions (1)

rajasekhar_reddy14
Active Contributor
0 Kudos

Hi,

thislink may help you...

raj

Former Member
0 Kudos

Hi,

I found the complete error:

Database-level error reported by JDBC driver while executing statement 'EXEC StoresProcName'. The JDBC driver returned the following error message: 'com.microsoft.sqlserver.jdbc.SQLServerException: Transaction (Process ID 58) was deadlocked on lock | communication buffer resources with another process and has been chosen as the deadlock victim. Rerun the transaction.'. For details, contact your database server vendor.

Any idea how I could solve this?

Former Member
0 Kudos

Hi, Chris,

What is your transaction isolation level?

Please, check this parameter in your advanced configuration of receiver communication channel.

Regards,

Carme

Former Member
0 Kudos

Check if your JDBC adapter is not locked.. see the solution given by Ganga Prasad in this thread..

Former Member
0 Kudos

Hi,

My transaction level is default

Former Member
0 Kudos

Hi Sarvesh Singh,

My adapter is not locked. It is working fine but somtimes (average once a hour) it gives an error. The one above.

Former Member
0 Kudos

It may happen that some other interface also tries to update the same table in JDBC database and then this situation comes. So I guess this is not an issue, infact it is preventing to add inconsistencies in the database.

Just read the transactionIsolation in sap help point 5.

http://help.sap.com/saphelp_nw04/helpdata/en/b0/676b3c255b1475e10000000a114084/content.htm

Former Member
0 Kudos

Hi,

obviously there are concurring accesses to the table your stored procedure is accessing. This is nothing serious, because SAP XI will retry the execution of the stored procedure according to the settings of the communication channels (3times all 5 minutes is the default). Additionally you can set the repeats in case of SQL errors in the extended tab of the communication channel configuration.

Tuning the transaction isolation levels might help to avoid the error but can decrease the consistency of the data as well. Default isolation level is always the highest available in a database (in case of SQL Server it should be SERIALIZABLE), so locks might easily occur. I would suggest to have a look at other applications accessing the tables and determine their isolation level.

All in all, I guess there shouldn't be real problems, because of the repeated execution of you stored procedure, but it's worth to have a look at the isolation level.

Regards Sven

Answers (0)