This content has been marked as final. Show 10 replies
The queue table...
Not sure about the MQ version as its on our clients side - i'll try and find this out....
I am using the Oracle Messaging Gateway....
To queue the messages I am using Oracle package 'DBMS_AQ' and calling 'ENQUEUE(...)'....
DBMS_AQ.ENQUEUE ( queue_name => 'Q_EXPR_MSG_TXN',
enqueue_options => enqueue_options,
message_properties => msg_properties,
payload => msg_xml,
msgid => msg_handle);
By default MGW will send messages in batches of 30 and you can control this via
setJavaProp oracle.mgw.batch_size=<1 to 100>
in the mgw.ora. If you want them to go 1 by 1 you could set this to 1.
When you say they are arriving out of sequence what do you mean exactly? Is each message independent of each other or are they linked in some way.
As part of each message there is a numeric count field starting at 1 to Infinite - messages are queued in order of this number...
Presently messages are being sent in batches of 30 as you stated....
On the MQ side when the messages are de-queued the messages are not in the same order they were queued - the dequeuing process is looking at the numeric count field and they are out of sequence...
Edited by: user4033511 on 03-Feb-2012 09:36
I am a bit surprised that they are out of order within a batch as the AQ component of MGW would just dequeue them in the order in which they were enqueued.
I would need to know the MQ version of the server and the MQ client that you are using and the MGW setup steps.
The fact that you have a sequence number implies that the messages need to be processed in order. Is that correct or are they independent?
"The fact that you have a sequence number implies that the messages need to be processed in order. Is that correct or are they independent?" - the client has asked we add a sequence number to each message - I think the client use the message sequence number to identify any messages that 'go missing' so I think the order the messages are de-queued is important as they probably have logic to raise an alert for out of sequence messages...
In reagrd to your MQ questions I have emailed the client and I am waiting for a reply - I made the chnage you suggested in the .ora file and will test this shortly....
As per Note 219410.1 in MOS 10.2 is not officially certified with MQ V7 and never will be now because 10.2 is in sustaining support. V7 caused some issues with MGW which affected access to the logging queues and therefore affected the propagation algorithm.
I would check that the MQ client and server version are 22.214.171.124 or higher as that fixed the main issue but it does not mean that there are not others.
If this issue can be reproduced with 126.96.36.199 + patches as per Note 219410.1 or 188.8.131.52 then you should log a service request and the behaviour can be investigated.