cancel
Showing results for 
Search instead for 
Did you mean: 

Problem with Synchronous abap proxy time out

Former Member
0 Kudos

Hi there.

I have the following scenario:

sync sync

3rd party <--


> PI <--


> ERP

http abap proxy

In the implementing class on the abap proxy i'm calling an standard BAPI, followed by a commit and returning the result.

The 3rd party app has a mechanism that when a message fails, he'll retry each 5 mins until it gets the response.

Last night there where some delays on ERP that cause the sync mesages to timeout, the 3rd party retried about 10 times to send the message until it finally went off. This morning i check and i have the same message 11 times on ERP!!, to my understanding if the sync comm timed out the process will abort and the message will not be processed on ERP, does anybody knows if im missing some configuration for this to work this way??.

Kind Regards,

Roberto.

Accepted Solutions (0)

Answers (2)

Answers (2)

former_member241146
Active Participant
0 Kudos

Hi Roberto.

There are a lot of time out configures in PI .

Follow the link that explain about this:

How to Investigate Timeouts In Synchronous XI PI Scenarios

http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/c059d583-a551-2c10-e095-eb5d95e03747

I hope to help you.

If you still keep this problem, you can ask me more about it.

Regards..

Bruno.

Former Member
0 Kudos

Well, this is weird ... if 3rd party system tried 10 times, the log in R3 won't show 11 retrials!

Could you paste the logs here? I would really like to check that

Former Member
0 Kudos

Hi i dont know wich logs would help you the most, i think im not being fully clear in here, the 3rd party system has a mechanism to resend the exactly same message whenever it gets a communication fail, however i can actually see on ERP the same message 11 times!!, the 3rd party retried 10 times, that means that even when the sync comunication times out, the proxy keeps running and commits!!

Former Member
0 Kudos

is not the time out i have problems with, is the message posting even when the comunication fails the one im concerned about.

Regards,

Roberto.

former_member241146
Active Participant
0 Kudos

Hi Roberto.

Were the business data persisted in the SAP or just message PI?

Maybe there is some Commit work in your ABAP PROXY or BAPI and it are executed even if the process are with error (time out). You can try to use Rollback work in your proxy, if it shows error.

Regards.

Bruno

Former Member
0 Kudos

Thanks for all the input. the data was persisted, actually i do have a commit, i included it because after some test you could actually see the message processed but the business data was not persisted, any clues on how to achieve data persistence on an abap proxy without using a bapi commit??.

Kind Regards,

Roberto.

stefan_grube
Active Contributor
0 Kudos

> is not the time out i have problems with, is the message posting even when the comunication fails the one im concerned about.

You cannot avoid this. This is a risk in sync messaging. Check, whether you could use an async process instead, or you have to implement something like an exactly-once handling.

Former Member
0 Kudos

Thanks for the reply,

It makes no sense that even when the communication fails the proxy commits, common sense tells me that's the kind of behaviour you could expect on async processing but not sync!!, the whole point of sync is to wait for that answer, makes not sense to commit if you cant send the answer back.

Is there any way i could check if the communication failed so i can rollback during the proxy procesing?

Kind regards,

Roberto.

stefan_grube
Active Contributor
0 Kudos

> It makes no sense that even when the communication fails the proxy commits, common sense tells me that's the kind of behaviour you could expect on async processing but not sync!!, the whole point of sync is to wait for that answer, makes not sense to commit if you cant send the answer back.

You have to consider in which order the action take place.

First the message is sent to receiver, then message is posted in receiver system, at last the response is sent back.

In this order it is performed, in this order it might fail.

I can only explain how it works.

former_member241146
Active Participant
0 Kudos

Hi Roberto.

Are you still a problem ?

Bruno