[omniNotify] Possible bug in event ordering when using EventBatch

Robert E. Gruber gruber at research.att.com
Thu Jan 29 12:26:45 GMT 2004


I will take a look at this over the weekend.

-- Bob


-----Original Message-----
From: omninotify-list-bounces at omniorb-support.com
[mailto:omninotify-list-bounces at omniorb-support.com] On Behalf Of Cameron Rochester
Sent: Wednesday, January 28, 2004 4:21 AM
To: 'omninotify-list at omniorb-support.com'
Subject: [omniNotify] Possible bug in event ordering when using EventBatch

Hi all,

Just wondering if anyone has experienced events arriving out-of-sequence
when using SequencePushConsumers/Suppliers

Configuration:

The OrderPolicy for the NotificationService is set to FifoOrder ( 1 ) in the
channel.cfg file, this value is not overridden when creating proxies.
I have a SequencePushSupplier supplying EventBatches of size 4 to the
NotificationService.
I have a SequencePushConsumer consuming EventBatches of size 4 from the
NotificationService (pacing interval of 1000ms).
The consumer & supplier are using the same channel, obviously. 100
StructuredEvents are sent at a time.

Scenario:

On the supplier side I add a sequence number to the variable_header field of
each StructuredEvent. The sequence number is incremented as each
StructuredEvent is added to the EventBatch. To verify the order of the
EventBatch I iterate through the batch just before sending.

When the SequencePushConsumer receives a batch I iterate through the
EventBatch and print out the sequence numbers. 50% of the time the sequence
numbers are jumbled in the received EventBatch. Most often the first two
StructuredEvents are in order, but the last two are reversed, but often the
Events will be 4 or 5 positions out of place.

Now, If I limit the SequencePushSupplier to send EventBatches of size 1, and
still have EventBatches of size 4 being pushed to the SequencePushConsumer,
the order is correct. I realise that this points towards the
SequencePushSupplier sending jumbled batches, but I have checked, double
checked, printed, and verified the order of the batch just before calling
push_structured_events() on the ProxyConsumer and it all seems fine.

Can anyone else verify this behaviour? If so, this is a nasty bug when you
are relying on the FifoOrder being correct.

Regards
Cameron Rochester

_______________________________________________
omninotify-list mailing list
omninotify-list at omniorb-support.com
http://www.omniorb-support.com/mailman/listinfo/omninotify-list




More information about the omninotify-list mailing list