zhijiangW commented on a change in pull request #6698: [FLINK-8581][network]
Move flushing remote subpartitions from OutputFlusher to netty
URL: https://github.com/apache/flink/pull/6698#discussion_r225059097
##########
File path:
flink-runtime/src/main/java/org/apache/flink/runtime/io/network/partition/ResultPartition.java
##########
@@ -268,6 +291,25 @@ public void flushAll() {
}
}
+ @Override
+ public void flushAllLocal() {
+ for (ResultSubpartition localSubpartition : localSubpartitions)
{
+ localSubpartition.flush();
+ }
+ }
+
+ @Override
+ public void setFlushTimeout(long flushTimeout) {
+ checkState(!this.flushTimeout.isPresent(), "Flush timeout can
not be set twice");
+ for (ResultSubpartition subpartition:
remoteSubpartitionsMissingPeriodicFlushes) {
+ checkState(subpartition.isLocal().isPresent());
+ checkState(!subpartition.isLocal().get());
+ subpartition.registerPeriodicFlush(flushTimeout);
+ }
+ remoteSubpartitionsMissingPeriodicFlushes.clear();
Review comment:
Yes, we may need add the synchronizing in above three methods for protecting
`localSubpartitions`, `remoteSubpartitionsMissingPeriodicFlushes` and
`flushTimeout` which are operated by task thread, netty thread and flusher
thread.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services