on 03-30-2010 8:00 AM
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
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
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?
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
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
User | Count |
---|---|
84 | |
24 | |
12 | |
9 | |
7 | |
6 | |
5 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.