Class StatusWatermarkValve.SubpartitionStatus

  • All Implemented Interfaces:
    HeapPriorityQueue.HeapPriorityQueueElement
    Enclosing class:
    StatusWatermarkValve

    @VisibleForTesting
    protected static class StatusWatermarkValve.SubpartitionStatus
    extends Object
    implements HeapPriorityQueue.HeapPriorityQueueElement
    An SubpartitionStatus keeps track of a subpartition's last watermark, stream status, and whether or not the subpartition's current watermark is aligned with the overall watermark output from the valve.

    There are 2 situations where a subpartition's watermark is not considered aligned:

    • the current watermark status of the subpartition is idle
    • the watermark status has resumed to be active, but the watermark of the subpartition hasn't caught up to the last output watermark from the valve yet.

    NOTE: This class implements HeapPriorityQueue.HeapPriorityQueueElement to be managed by StatusWatermarkValve.alignedSubpartitionStatuses to help find minimum watermark.