cancel
Showing results for 
Search instead for 
Did you mean: 

Serialization issue with Message Split using maintain order at runtime.

Former Member
0 Kudos

Hi Folks

I am facing below issue.Can anyone help.

My Scenario

Proxy to SOAP (multiple receiver)

I have a proxy message which goes to 2 different system Suppose System1 and System2.

System1 is a direct call, no issue with it.

But when it comes for System2, based on values in payload the message can be split into multiple message.

for example: payload can be for Add, Delete or Update. We have 3 separate mapping. One payload can have all togeather as well.

But on target side they expect message in sequence. Add should come first then Update.....

For this i added "maintain order at runtime" and i get this below error.

All messages get stuck in ECC smq2 with this error.

If i remove maintain order at runtime, it works fine without issue but it wont be in sequence.

com.sap.engine.interfaces.messaging.api.exception.MessagingException: com.sap.engine.interfaces.messaging.api.exception.MessagingException: Could not assign next EOIO sequence number for SC: XI_OUTBOUND_XI_SERIALIZE4914__XXXXX. Reason: com.sap.engine.interfaces.messaging.api.exception.MessagingException: Multiple EOIO contexts cannot be used within one transaction. Previous: XI_OUTBOUND_XI_SERIALIZE9407__XXXXX Current: XI_OUTBOUND_XI_SERIALIZE4914__XXXXX at


Below is my configuration


Accepted Solutions (0)

Answers (3)

Answers (3)

former_member194786
Active Contributor
0 Kudos

Hi Osman,

Did you happen to find a resolution for this? I have just come across the same error myself and wondering what may be the cause of this error? A small change in my scenario is that I have Idoc as sender and JDBC as receiver.

Regards,

Sanjeev.

former_member194786
Active Contributor
0 Kudos

Hi All,

A quick update, after some prodding and playing around, I noticed that the batch size in sender IDoc adapter was smaller than the batch size in ECC system. After matching those parameters, I was able to reprocess the IDocs from SAP. Seems odd behavior, but I didn't have time to further analyse it. Thought it might help someone else stumbling into same error.

Regards,

Sanjeev.

Former Member
0 Kudos

The scenario above can be redesigned with two scenarios

a) Proxy to Queue

  --> For the incoming data do the split and logic and place every message in the internal queue (which you can define in NWA). The sequence assumes the data comes in right order from sender.

b) Queue to Soap


I remember doing this kind of scenario some years back and it did solve the problem of sequencing. 

former_member190293
Active Contributor
0 Kudos

Hi Osman!

I may be wrong, but it seems to me that it might be caused by your message split for two receivers.

Try not to split your message (remove the first receiver) and check the result.

By the way: do you use separate interface operation for each of your message operation, one operation with different operation mappings or separate interfaces?

Regards, Evgeniy.

Former Member
0 Kudos

We tried both ways

Earlier we have 3 separate operation mappings. We changed the design to have 1 operation mapping (1:n mapping). Still it gives error.

former_member190293
Active Contributor
0 Kudos

Hi Osman!

Try with separate interfaces for each operation.

Regards, Evgeniy.

Former Member
0 Kudos

I have 1 Sender Service Interface and 3 Receiver Service Interface.

I found below notes with same error, but lower version of PI and both talks about applying the patch.

But we are on 7.4

https://websmp230.sap-ag.de/sap(bD1lbiZjPTAwMQ==)/bc/bsp/sno/ui_entry/entry.htm?param=69765F6D6F6465...

https://websmp230.sap-ag.de/sap(bD1lbiZjPTAwMQ==)/bc/bsp/sno/ui_entry/entry.htm?param=69765F6D6F6465...