AQ to MQ Message Sequence Issue
894284Feb 3 2012 — edited Feb 6 2012Hi,
I am using Advanced queues on "Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bi".
The Advanced Queue is created - next many message(s) are enqueued one-at-a-time in order - part of the code is shown below....
LOOP
-- Convert to XML
msg_xml := XMLType.createXML(msg, NULL);
-- Add message to the queue
enqueue_options.VISIBILITY := DBMS_AQ.ON_COMMIT;
enqueue_options.SEQUENCE_DEVIATION := null;
msg_properties.EXPIRATION := DBMS_AQ.NEVER;
DBMS_AQ.ENQUEUE ( queue_name => 'Q_EXPR_MSG_TXN',
enqueue_options => enqueue_options,
message_properties => msg_properties,
payload => msg_xml,
msgid => msg_handle);
END LOOP;
The AQ sends the messages to an MQ - the MQ end is reporting messages are arriving as a batch (not one-at-a-time as placed on the AQ) and out of sequence...
I can understand why the AQ sends the messages across as a batch however is this possible to change to send across one message at-a-time...?
Why are the messages arriving out of sequence ..? (is this to do with batching)
Regards Ian