cancel
Showing results for 
Search instead for 
Did you mean: 

Trying to understand the B_EO_INBOUND_PARALLEL ?

Former Member
0 Kudos

Bonjour a tous et a toutes,

We have 15 integrations scenarios.

-> ¾ are Async (JMS / IDOC & IDOC / JMS)

-> ¼ are Sync (JMS / RFC to CICS and return in JMS)

We are trying to give priority to the Sync scenarios in order to avoid a timeout on the sender side.

Here are the EO parameters we are using (in DEV for now):

EO_OUTBOUND_PARALLEL = 5 B_EO_OUT_PARALLEL = 20

EO_INTBOUND_PARALLEL = 3 B_EO_IN_PARALLEL = 20

So we get (in SMQ2), 3 inbound queues and 5 outbound queues. This is working correctly.

What do not seem to behave the way it is documented are the “B_EO _ …” parameters.

My understanding is that all in inbound messages will be equally distributed in the 3 inbound queues with a maximum of 20 messages in each and every queues, for a maximum of 60 messages being process in parallel.

Idem, for the 5 outbound queues (20 messages each = 100 messages being processes in parallel).

We are not getting this type of behaviour Instead, we get more than 3 inbound queues (and more than 5 outbound queues) with weird names …

Is this because we are getting more messages than 60 inbound messages ?

Back to my initial request ... prioritize Async messages. We have used message filtering to achieve that … I have 2 questions

1) De we have to set filtering for OUR ENTIRE Async message to a lower priority queue and assign ALL Sync message to a higher priority queues? Is that how we should proceed?

2) How can we make sure (when we watch SMQ2) that message that are sent to a higher priority queue are getting process BEFORE a lower priority queues ?

Any help will be greatly appreciated!!

Michel Osborne A+

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Help Help !!

Anyone

Many thank in advance !

Former Member
0 Kudos

Hi,

Anyone has experiment the B_EO_INBOUND_PARALLEL parameters ?

Merci !

Former Member
0 Kudos

Hi,

We have successfully used the B_EO_IN_PARALLEL and B_EO_OUT_PARALLEL parameters at our site in a high volume/high performance environment. We are using NetWeaver 2004s at Support Pack Stack 12 on HP-UX 64-bit and Oracle 10.2, and we haven't yet gone live with our system. I'm not an expert on these parameters, but I do know that you also need to set the TUNING parameter BALANCING to 1 in order to enable the B_EO_ parameters. You will also want to look at note 1106899, as it describes a database deadlock problem that can occur when these parameters are used, especially with high load. I know this doesn't answer all of your questions, but hopefully it helps.

Thanks,

Dave

Former Member
0 Kudos

Hi,

Just a couple of other details that I failed to mention. We have set EO_INBOUND_PARALLEL and EO_OUTBOUND_PARALLEL both to 12, and B_EO_IN_PARALLEL and B_EO_OUT_PARALLEL to 250. We are processing upwards of 60,000 messages per hour in our XI system. Most of these are asynchronous, but a small percentage are synchronous. We have run into a couple of problems during our performance and stress tests. First, messages go into a SYSFAIL status and the queue becomes blocked and doesn't free up until the next scheduled batch job to retry the messages. SAP suggested that we set the LOCK_MESSAGE parameter to 0 (default is 1) to fix this problem. The other problem is that the balancing of the messages using the B_EO_ parameters was causing a lot of deadlocking in the database. Part of the cause for this problem is probably due to the fact that our B_EO_ parameters were set too low for the volume that we were trying to push through XI (we initially had them both set to 175). The documentation on the parameters says that the B_EO_ parameter multiplied by the EO_ parameter should be greater than the number of entries that exist in the queues at any given time, and we were seeing a little over 3,000 entries (250 x 12 = 3,000). Also, we're hoping the SAP note I mentioned in my previous response completely resolves the deadlocking issue. The note just came out, and I haven't had a chance to apply it and test it.

Again, I hope this is of use to you.

Thanks,

Dave

Former Member
0 Kudos

Hi David,

First of all – Many thank for your answer! It seem that there is not that much peoples that has work with parameters

I have checked the OSS note you are mentioning. We will install it and test it. It might resolved other issues we have with queues:

&

We have some blocked queues from time to time and the batch job (that restart the message) do the job. However, in some cases the queue (we get an error in CCMS) get blocked but has the status: RUNNING … (not SYSFAIL) and it stay that way for ever … until we manually unblock the queue. We have a support ticket open at SAP support.

Not sure I understand the meaning of the LOCK_MESSAGE parameter. It depend of what type of SYSFAIL you get ? This is parameter is available in our instance, but not in the documentation ... Can you elaborate, please ?

In your case, we you set the values to EO_INBOUND_PARALLEL and EO_OUTBOUND_PARALLEL both to 12, and B_EO_IN_PARALLEL and B_EO_OUT_PARALLEL to 250. Do you see an even distribution of messages in each and every queues? In our case, it seem that the B_EO parameters are not working as documented. We do not see an even distribution … I have even run the pgm in debug to see how it “reorg” (balanced) it’s queue …

Yes, we have set the BALANCING parameter is to 1

We are on PI 7.0 – SP12 – HPUX with Oracle as well … but in HA mode.

A+ Michel Osborne