public class LocalInputChannel extends InputChannel implements BufferAvailabilityListener
InputChannel.BufferAndAvailabilitychannelInfo, consumedSubpartitionIndexSet, currentBackoff, initialBackoff, inputGate, maxBackoff, numBuffersIn, numBytesIn, partitionId| 构造器和说明 |
|---|
LocalInputChannel(SingleInputGate inputGate,
int channelIndex,
ResultPartitionID partitionId,
ResultSubpartitionIndexSet consumedSubpartitionIndexSet,
ResultPartitionManager partitionManager,
TaskEventPublisher taskEventPublisher,
int initialBackoff,
int maxBackoff,
org.apache.flink.metrics.Counter numBytesIn,
org.apache.flink.metrics.Counter numBuffersIn,
ChannelStateWriter stateWriter) |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
acknowledgeAllRecordsProcessed()
When received
EndOfData from one channel, it need to acknowledge after this event get
processed. |
void |
checkpointStarted(CheckpointBarrier barrier)
Called by task thread when checkpointing is started (e.g., any input channel received
barrier).
|
void |
checkpointStopped(long checkpointId)
Called by task thread on cancel/complete to clean-up temporary data.
|
Optional<InputChannel.BufferAndAvailability> |
getNextBuffer()
Returns the next buffer from the consumed subpartitions or
Optional.empty() if there
is no data to return. |
void |
notifyDataAvailable(ResultSubpartitionView view)
Called whenever there might be new data available.
|
void |
notifyRequiredSegmentId(int subpartitionId,
int segmentId)
Notify the upstream the id of required segment that should be sent to netty connection.
|
protected int |
peekNextBufferSubpartitionIdInternal()
Returns the index of the subpartition where the next buffer locates, or -1 if there is no
buffer available and the subpartition to be consumed is not determined.
|
protected void |
requestSubpartitions()
Requests the subpartitions specified by
InputChannel.partitionId and InputChannel.consumedSubpartitionIndexSet. |
void |
resumeConsumption()
After sending a
CheckpointBarrier of
exactly-once mode, the upstream will be blocked and become unavailable. |
String |
toString() |
int |
unsynchronizedGetNumberOfQueuedBuffers() |
checkError, convertToPriorityEvent, getChannelIndex, getChannelInfo, getConsumedSubpartitionIndexSet, getCurrentBackoff, getPartitionId, increaseBackoff, notifyBufferAvailable, notifyChannelNonEmpty, notifyPriorityEvent, peekNextBufferSubpartitionId, setError, unsynchronizedGetSizeOfQueuedBuffersclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitnotifyPriorityEventpublic LocalInputChannel(SingleInputGate inputGate, int channelIndex, ResultPartitionID partitionId, ResultSubpartitionIndexSet consumedSubpartitionIndexSet, ResultPartitionManager partitionManager, TaskEventPublisher taskEventPublisher, int initialBackoff, int maxBackoff, org.apache.flink.metrics.Counter numBytesIn, org.apache.flink.metrics.Counter numBuffersIn, ChannelStateWriter stateWriter)
public void checkpointStarted(CheckpointBarrier barrier) throws CheckpointException
InputChannelcheckpointStarted 在类中 InputChannelCheckpointExceptionpublic void checkpointStopped(long checkpointId)
InputChannelcheckpointStopped 在类中 InputChannelprotected void requestSubpartitions()
throws IOException
InputChannelInputChannel.partitionId and InputChannel.consumedSubpartitionIndexSet.IOExceptionprotected int peekNextBufferSubpartitionIdInternal()
throws IOException
InputChannelpeekNextBufferSubpartitionIdInternal 在类中 InputChannelIOExceptionpublic Optional<InputChannel.BufferAndAvailability> getNextBuffer() throws IOException
InputChannelOptional.empty() if there
is no data to return.getNextBuffer 在类中 InputChannelIOExceptionpublic void notifyDataAvailable(ResultSubpartitionView view)
BufferAvailabilityListenernotifyDataAvailable 在接口中 BufferAvailabilityListenerview - the ResultSubpartitionView containing available data.public void resumeConsumption()
InputChannelCheckpointBarrier of
exactly-once mode, the upstream will be blocked and become unavailable. This method tries to
unblock the corresponding upstream and resume data consumption.resumeConsumption 在类中 InputChannelpublic void acknowledgeAllRecordsProcessed()
throws IOException
InputChannelEndOfData from one channel, it need to acknowledge after this event get
processed.acknowledgeAllRecordsProcessed 在类中 InputChannelIOExceptionpublic int unsynchronizedGetNumberOfQueuedBuffers()
public void notifyRequiredSegmentId(int subpartitionId,
int segmentId)
InputChannelnotifyRequiredSegmentId 在类中 InputChannelsubpartitionId - The id of the corresponding subpartition.segmentId - The id of required segment.Copyright © 2014–2024 The Apache Software Foundation. All rights reserved.