on 05-20-2010 10:20 AM
Hi,
I have ABAP Proxy (7.1 EHP1) -> JDBC (MS SQL Server) scenario.
I'm trying to do INSERT_UPDATE. The interfases works fine for the first 5 messages. If I check the DB I see rows inserted correctly, but the first five messages stucks in processing started, and the others JDBC messages stuck in Pending to be delivered The interfase is developed as asynchron, i'm not affraid in the response.
I tryed to do just an INSERT, send just one message, or change the isolation level. But the messages continues stucking in processing started status.
One of the lasts possibilities is transform the interface to sync or increase the max number of threads of queue "JDBC_http://sap.com/xi/XI/SystemRecv" via ConfigTool. But I can't stop the j2ee stack until next weekend.
The audit Log:
- The message was successfully received by the messaging system. Protocol: XI URL: http://sapdev:51000/MessagingSystem/receive/AFW/XI Credential (User): PIISUSER
- Using connection JDBC_http://sap.com/xi/XI/System. Trying to put the message into the receive queue.
- Message successfully put into the queue.
- The message was successfully retrieved from the receive queue.
- The message status was set to DLNG.
- Delivering to channel: CC_C0400_IM01_MES_INTEG
- JDBC Adapter Receiver processing started, required QoS ExactlyOnce
- JDBC Adapter Receiver Channel CC_C0400_IM01_MES_INTEG: processing started; party / service XXXXXXXXX_DES.
- INSERT INTO XXXXXXXXXX_TST (CodArticulo, Descripcion, EAN13, Vidautil, bolsasporestuche, estuchesporcaja, estuchesporpalet, gxu, UNISTK) VALUES (XXXXXX, XXXXXXXXX, , 270 , 1, 0 , 0.000 , 1000 , KG)
-
Maybe is a problem in DB side, but the experience tell me that is more inestable a SAP PI than MS SQL Server
Any Idea?
P.S. In the same PI is coexisting diferents JDBC interfaces that works fine. I have tried to use their channels but still stucking.
And this is not my first PI 😛
Hi,
As you said you already have other JDBC scenarios that are working fine.... Then I dont think there is any problem in your JDBC adapter.
However you can use any of the working JDBC channel in the Receiver Agrrement and change the connection string and see if it works.
Also you can Switch on the Debugging mode of the JDBC adapter to see at what place the problem is comming... Also you can set Debugging mode on on the adapter side to see whats going wrong there.
Thanks,
Sunil Singh
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Xavier,
set the options to
Local
Redo
In the Processing tab/Exactly one handling, this should prevent the jdbc thread to hold.
Regards,
Julio
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
@ Narendra - I hardcoded the interface. Still stucking at 5th message (Max of messages for adapter to process in paralel) But it's curious that the rows are inserted at DB.... It seems that Adapter Engine don't get any kind of ACK from DB.
@ Shabarish - I restarted & canceled, and resended. The JDBC connector service works fine @ NWA
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Maximum Currency was set to 90000.
I'm trying to modify:
- configtool > managers > applicationThreadManager: MaxThreadCount to 350.
- configtool > services > com.sap.aii.af.svc: messaging.connectionDefinition to increase Send.maxConsumers to 10, Recv.maxConsumers to 10, Call.maxConsumers to 10, Rqst.maxConsumers to 10
Another usefull information about Comunication Channel configuration:
Exactly-Once Handling:
Persistence = Local
Conflict Resolution = Error
Transaction Isolation Level = Default (I checked it with serializable)
DataBase AutoCommit-Enabled (checked)
Disconnect from Database after Processing each message (checked)
Batch Mode (unchecked)
Hi Xavier,
have a look at the documentation of this option:
db.autoCommit=NO|YES
Use this parameter to deactivate the logical unit of work required by the JDBC adapter to guarantee that the data in the database is consistent. This option is required for JDBC drivers that do not support transactions. To avoid data inconsistencies in the database when the logical unit of work is deactivated, ensure that multiple database transactions cannot access the database simultaneously.
The default value is NO.
Do not set this parameter to YES if the JDBC driver supports transactions, that is, if the system does not display a corresponding error message during normal operation.
Netweaver Documentation
I'm sure MS SQL Server JDBC Driver is able to support transactions. By default the whole message will be treated as one transaction against the database.
Regards
Sven
Hi Xavier,
can you have a look at the database (locks, deadlocks, load) while inserting into the table via PI? You could use a tool like toad. I'm not sure Visual Studio supplies the functionality to do so.
Did you deactivate/stop the channel to make sure the CPA cache is cleared and the new settings are running? I'm still convinced it's a setting problem. Maybe you can try to uncheck the "disconnect after each message" option. Could be an issue with that.
Regards Sven
I can't install // connect software like Toad. I'll talk to DBs Administrator to coordinate it.
I activate / desactivate the channel each time. (I have to cancel the messages stucked as processingstarted)
I also changed the number of messages that can process simultaniously @ config tool and now is "crashing" at 15 messages instead 5.
I'll try to uncheck disconnect after each message.
Regards,
Xavi
when the adapter finally goes into error after the retries, what is the error description?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Xavier,
Kindly check the data type in SAP side as well as in SQL side.
Also, check the actual data by sending 1 by 1 records.
Its a issue of data.
Regards,
Narendra
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
84 | |
24 | |
11 | |
9 | |
7 | |
6 | |
5 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.