Class SpillingBuffer

  • All Implemented Interfaces:
    DataOutput, org.apache.flink.core.memory.DataOutputView, org.apache.flink.core.memory.MemorySegmentWritable

    public class SpillingBuffer
    extends AbstractPagedOutputView
    An output view that buffers written data in memory pages and spills them when they are full.
    • Constructor Detail

      • SpillingBuffer

        public SpillingBuffer​(IOManager ioManager,
                              org.apache.flink.core.memory.MemorySegmentSource memSource,
                              int segmentSize)
    • Method Detail

      • nextSegment

        protected org.apache.flink.core.memory.MemorySegment nextSegment​(org.apache.flink.core.memory.MemorySegment current,
                                                                         int positionInCurrent)
                                                                  throws IOException
        Description copied from class: AbstractPagedOutputView
        This method must return a segment. If no more segments are available, it must throw an EOFException.
        Specified by:
        nextSegment in class AbstractPagedOutputView
        Parameters:
        current - The current memory segment
        positionInCurrent - The position in the segment, one after the last valid byte.
        Returns:
        The next memory segment.
        Throws:
        IOException
      • close

        public List<org.apache.flink.core.memory.MemorySegment> close()
                                                               throws IOException
        Returns:
        A list with all memory segments that have been taken from the memory segment source.
        Throws:
        IOException