Class SortMergeJoinIterator

java.lang.Object
org.apache.flink.table.runtime.operators.join.SortMergeJoinIterator
All Implemented Interfaces:
Closeable, AutoCloseable
Direct Known Subclasses:
SortMergeInnerJoinIterator, SortMergeOneSideOuterJoinIterator

public abstract class SortMergeJoinIterator extends Object implements Closeable
Gets probeRow and match rows for inner/left/right join.
  • Field Details

    • keyComparator

      protected final RecordComparator keyComparator
    • probeKey

      protected org.apache.flink.table.data.binary.BinaryRowData probeKey
    • bufferedRow

      protected org.apache.flink.table.data.binary.BinaryRowData bufferedRow
    • bufferedKey

      protected org.apache.flink.table.data.binary.BinaryRowData bufferedKey
    • matchKey

      protected org.apache.flink.table.data.binary.BinaryRowData matchKey
    • matchBuffer

      protected ResettableExternalBuffer matchBuffer
  • Constructor Details

    • SortMergeJoinIterator

      public SortMergeJoinIterator(BinaryRowDataSerializer probeSerializer, BinaryRowDataSerializer bufferedSerializer, Projection<org.apache.flink.table.data.RowData,org.apache.flink.table.data.binary.BinaryRowData> probeProjection, Projection<org.apache.flink.table.data.RowData,org.apache.flink.table.data.binary.BinaryRowData> bufferedProjection, RecordComparator keyComparator, org.apache.flink.util.MutableObjectIterator<org.apache.flink.table.data.RowData> probeIterator, org.apache.flink.util.MutableObjectIterator<org.apache.flink.table.data.binary.BinaryRowData> bufferedIterator, ResettableExternalBuffer buffer, boolean[] filterNulls) throws IOException
      Throws:
      IOException
  • Method Details

    • advanceNextSuitableProbeRow

      protected boolean advanceNextSuitableProbeRow() throws IOException
      Throws:
      IOException
    • advanceNextSuitableBufferedRow

      protected boolean advanceNextSuitableBufferedRow() throws IOException
      Throws:
      IOException
    • nextProbe

      protected boolean nextProbe() throws IOException
      Throws:
      IOException
    • bufferMatchingRows

      protected void bufferMatchingRows() throws IOException
      Throws:
      IOException
    • getProbeRow

      public org.apache.flink.table.data.RowData getProbeRow()
    • getMatchKey

      public org.apache.flink.table.data.binary.BinaryRowData getMatchKey()
    • getMatchBuffer

      public ResettableExternalBuffer getMatchBuffer()
    • close

      public void close()
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable