Interface PartitionRequestClient

    • Method Detail

      • requestSubpartition

        void requestSubpartition​(ResultPartitionID partitionId,
                                 ResultSubpartitionIndexSet subpartitionIndexSet,
                                 RemoteInputChannel inputChannel,
                                 int delayMs)
                          throws IOException
        Requests a range of remote sub partitions.
        Parameters:
        partitionId - The identifier of result partition to be requested.
        subpartitionIndexSet - The sub partition index range in the requested result partition.
        inputChannel - The remote input channel for requesting the sub partition.
        delayMs - The request is scheduled within a delay time.
        Throws:
        IOException
      • notifyCreditAvailable

        void notifyCreditAvailable​(RemoteInputChannel inputChannel)
        Notifies available credits from one remote input channel.
        Parameters:
        inputChannel - The remote input channel who announces the available credits.
      • notifyNewBufferSize

        void notifyNewBufferSize​(RemoteInputChannel inputChannel,
                                 int bufferSize)
        Notifies new buffer size from one remote input channel.
        Parameters:
        inputChannel - The remote input channel who announces the new buffer size.
        bufferSize - The new buffer size.
      • notifyRequiredSegmentId

        void notifyRequiredSegmentId​(RemoteInputChannel inputChannel,
                                     int subpartitionIndex,
                                     int segmentId)
        Notifies the id of segment required from one remote input channel.
        Parameters:
        inputChannel - The remote input channel who requires segment.
        subpartitionIndex - The id of the corresponding subpartition.
        segmentId - The id of segment.
      • resumeConsumption

        void resumeConsumption​(RemoteInputChannel inputChannel)
        Requests to resume data consumption from one remote input channel.
        Parameters:
        inputChannel - The remote input channel who is ready to resume data consumption.
      • acknowledgeAllRecordsProcessed

        void acknowledgeAllRecordsProcessed​(RemoteInputChannel inputChannel)
        Acknowledges all user records are processed for this channel.
        Parameters:
        inputChannel - The input channel to resume data consumption.
      • sendTaskEvent

        void sendTaskEvent​(ResultPartitionID partitionId,
                           TaskEvent event,
                           RemoteInputChannel inputChannel)
                    throws IOException
        Sends a task event backwards to an intermediate result partition.
        Parameters:
        partitionId - The identifier of result partition.
        event - The task event to be sent.
        inputChannel - The remote input channel for sending this event.
        Throws:
        IOException
      • close

        void close​(RemoteInputChannel inputChannel)
            throws IOException
        Cancels the partition request for the given remote input channel and removes this client from factory if it is not referenced by any other input channels.
        Parameters:
        inputChannel - The remote input channel for canceling partition and to be removed from network stack.
        Throws:
        IOException