Interface StreamPartitionMsgOffset

  • All Superinterfaces:
    Comparable<StreamPartitionMsgOffset>
    All Known Implementing Classes:
    LongMsgOffset

    @Evolving
    public interface StreamPartitionMsgOffset
    extends Comparable<StreamPartitionMsgOffset>
    An interface to be implemented by streams consumed using Pinot LLC consumers. Pinot expects a stream partition to be a queue of messages. Each time a message is appended to the queue, the offset of that message should be higher than all the previous messages appended to the queue. Messages will be retrieved (by Pinot) in the order in which they were appended to the queue. This object represents a direct reference to a message within a stream partition. The behavior of the Comparable.compareTo(Object other) method when comparing offsets across partitions is undefined. Pinot will not invoke this method to compare offsets across stream partitions It is useful to note that these comparators and serialization methods should not change across versions of the stream implementation. Pinot stores serialized version of the offset in metadata. Also, Pinot may consume a message delivered by earlier (or later) versions of the stream implementation