Can I guarantee the order that tuples are enqueued to different streams?

Can I guarantee the order that tuples are enqueued to different streams?

book

Article ID: KB0074909

calendar_today

Updated On:

Products Versions
TIBCO Streaming -

Description

Can I guarantee the order that tuples are enqueued to different streams from a StreamBase Client?

With a single StreamBase client connected to the server the client enqueues tuples on multiple input streams using instances of the BufferedTuple class. All enqueuing is done from a single thread in one process. If tuples are enqueued on input stream A, and also on another input stream B, does the StreamBase application guarantee to receive them in the exact order that they are enqueued?

Issue/Introduction

Can I guarantee the order that tuples are enqueued to different streams?

Resolution

The StreamBase Server makes no guarantees with regard to the ordering of tuples on different input streams, regardless of how they were enqueued from an external source. This applies to internal streams (arcs) as well; tuples flowing on parallel arcs are unordered with respect to each other. The only guarantee is that operators will preserve the order of their input tuples when producing output tuples.

See http://docs.streambase.com/latest/index.jsp?topic=/com.streambase.sb.ide.help/data/html/apiguide/creatingclientsfaq.html for more information that might be related to your situation.