Class StatusWatermarkValve.SubpartitionStatus

java.lang.Object
org.apache.flink.streaming.runtime.watermarkstatus.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.