cancel
Showing results for 
Search instead for 
Did you mean: 

Strange bug when sending messages in parallel with same sender component

Former Member
0 Kudos

We have one sender business system sending messages to two different interfaces in parallel using an asynchronous soap channel : Interface1 and Interface2. In this scenario the Interface1 messages appear to be conflicting in some way with the Interface2 messages. A certain percentage of the Interface1 messages incorrectly receive a receiver system which equals the receiver configured for Interface2. This causes the Interface1 messages to fail since there is no defined mapping our routing channel to the Interface2 receiver system for that interface.

We have confirmed that this bug only exists when the same sender business system is used. We ran a test using different sender systems and all the messages went through successfully. Today we ran a test moving both interfaces over to a different sender. This test reproduced the issue but in a slightly different way. This time the Interface2 messages were corrupted with the receiver from Interface1.

We also ran some load tests to see how many messages need to be sent before the symptoms occur. We are able to reproduce the problem with as little as 15 messages for each interface. 10 messages for each interface works.

We have noticed that the messages that fail can't seem to load the sender agreement. We think this might be where the problem might be. I pulled the trace message below for the error cases:

<Trace level="1" type="T">Reading sender agreement</Trace>

<Trace level="1" type="T">Message does not contain a sender agreement</Trace>

<Trace level="1" type="T">Inbound validation by Integration Engine does not take place</Trace>

For the successful messages the trace looks like:

<Trace level="1" type="T">Reading sender agreement</Trace>

<Trace level="3" type="T">Validation Mode = No Validation</Trace>

Has anyone ever seen this behavior? We have put in a ticket for the SAP support team, but I'm hoping someone here might have seen this and can tell me if there is patch.

Thanks,

Kevin

Accepted Solutions (1)

Accepted Solutions (1)

markangelo_dihiansan
Active Contributor
0 Kudos

Hello,

We have one sender business system sending messages to two different interfaces in parallel using an asynchronous soap channel : Interface1 and Interface2.

You have to create two soap sender comm channels and two sender agreements. The reason for this is that interface1 is already binded using your sender agreement. Therefore, you will get an error/conflict for interface2 because it is not the interface expected by your only sender agreement.

Hope this helps,

Mark

Former Member
0 Kudos

Hi Mark. Thank you for responding. We do have two different communication channels and two different sender agreements. What is interesting is that this "conflict" only happens when there is a certain load on the system. If we send 10 messages on each channel then we don't receive any errors. If we send 15 messsages or more on each channel we see errors.

markangelo_dihiansan
Active Contributor
0 Kudos

Hello,

If you are using a communication component without party, can you remove the * from the sender communication channel and then test again?

Regards,

Mark

Answers (0)