I hope you can help me. In other posts I could not directly find the answer to this question.
We have a situation where we send Hl7 from our ECC by an proxy to mutliple receivers. We have done the proxy serialization and on PI-side we have EOIO order and used the option maintain order at runtime.
We saw that messages go to PI in the correct sequence and with the correct sequence number, but that an later received message is processed earlier then an earlier received one. We saw in the message log also this tekst:
Sequencer triggered by another cluster node; status will be updated to TBDL and message will be put in queue
We read in the Tuning the PI/PO Messaging System Queues blog that:
The queues in the Messaging System behave different then the qRFC queues in ABAP. The ABAP queues are strictly First In First Out (FIFO) queues and are only processed by one Dialog work process at a time. The Messaging System queues have a configurable amount of so called consumer threads that process messages from the queue. The default number of consumer threads is 5 per adapter (JDBC, File, JMS, …), per direction (inbound and outbound) and Quality of Service (asynchronous (EO, EOIO) and synchronous). Hence in case a message is taking very long other messages that arrived later can finish processing earlier. Therefore Messaging System queues are not strictly FIFO.
Our question is, if it is possible to avoid this, and force FIFO in some way?
We are on an 7.5 SP 14 system.I hope you can help me.