@Override public void requestSubpartitionView( ResultPartitionProvider partitionProvider, ResultPartitionID resultPartitionId, int subPartitionIndex) throws IOException { synchronized (requestLock) { if (subpartitionView == null) { // This this call can trigger a notification we have to // schedule a separate task at the event loop that will // start consuming this. Otherwise the reference to the // view cannot be available in getNextBuffer(). this.subpartitionView = partitionProvider.createSubpartitionView( resultPartitionId, subPartitionIndex, this); } else { throw new IllegalStateException("Subpartition already requested"); } } }
void requestSubpartitionView( ResultPartitionProvider partitionProvider, ResultPartitionID resultPartitionId, int subPartitionIndex) throws IOException { synchronized (requestLock) { if (subpartitionView == null) { // This this call can trigger a notification we have to // schedule a separate task at the event loop that will // start consuming this. Otherwise the reference to the // view cannot be available in getNextBuffer(). this.subpartitionView = partitionProvider.createSubpartitionView( resultPartitionId, subPartitionIndex, this); } else { throw new IllegalStateException("Subpartition already requested"); } } }
@Override public void requestSubpartitionView( ResultPartitionProvider partitionProvider, ResultPartitionID resultPartitionId, int subPartitionIndex) throws IOException { synchronized (requestLock) { if (subpartitionView == null) { // This this call can trigger a notification we have to // schedule a separate task at the event loop that will // start consuming this. Otherwise the reference to the // view cannot be available in getNextBuffer(). this.subpartitionView = partitionProvider.createSubpartitionView( resultPartitionId, subPartitionIndex, this); } else { throw new IllegalStateException("Subpartition already requested"); } } }
@Override public void requestSubpartitionView( ResultPartitionProvider partitionProvider, ResultPartitionID resultPartitionId, int subPartitionIndex) throws IOException { synchronized (requestLock) { if (subpartitionView == null) { // This this call can trigger a notification we have to // schedule a separate task at the event loop that will // start consuming this. Otherwise the reference to the // view cannot be available in getNextBuffer(). this.subpartitionView = partitionProvider.createSubpartitionView( resultPartitionId, subPartitionIndex, this); } else { throw new IllegalStateException("Subpartition already requested"); } } }
@Override public void requestSubpartitionView( ResultPartitionProvider partitionProvider, ResultPartitionID resultPartitionId, int subPartitionIndex) throws IOException { synchronized (requestLock) { if (subpartitionView == null) { // This this call can trigger a notification we have to // schedule a separate task at the event loop that will // start consuming this. Otherwise the reference to the // view cannot be available in getNextBuffer(). this.subpartitionView = partitionProvider.createSubpartitionView( resultPartitionId, subPartitionIndex, this); } else { throw new IllegalStateException("Subpartition already requested"); } } }
@Override public void requestSubpartitionView( ResultPartitionProvider partitionProvider, ResultPartitionID resultPartitionId, int subPartitionIndex) throws IOException { synchronized (requestLock) { if (subpartitionView == null) { // This this call can trigger a notification we have to // schedule a separate task at the event loop that will // start consuming this. Otherwise the reference to the // view cannot be available in getNextBuffer(). this.subpartitionView = partitionProvider.createSubpartitionView( resultPartitionId, subPartitionIndex, this); } else { throw new IllegalStateException("Subpartition already requested"); } } }
@Override public void requestSubpartitionView( ResultPartitionProvider partitionProvider, ResultPartitionID resultPartitionId, int subPartitionIndex) throws IOException { synchronized (requestLock) { if (subpartitionView == null) { // This this call can trigger a notification we have to // schedule a separate task at the event loop that will // start consuming this. Otherwise the reference to the // view cannot be available in getNextBuffer(). this.subpartitionView = partitionProvider.createSubpartitionView( resultPartitionId, subPartitionIndex, this); subpartitionView.notifyCreditAdded(numCreditsAvailable); } else { throw new IllegalStateException("Subpartition already requested"); } } }