functioner edited a comment on pull request #2737: URL: https://github.com/apache/hadoop/pull/2737#issuecomment-822806901
> No, it's a non-blocking write so by definition it will never hang – unless induced by fault injection. @daryn-sharp I have considered this counterargument in https://github.com/apache/hadoop/pull/2737#issuecomment-822591028, where I proposed another argument that it may hang when it's a huge payload, because there's a while-loop. Please take a look. Yes, `channel.write(buffer)` is non-blocking. But I suspect that `channelIO(null, channel, buffer)` is blocking, otherwise we won't have the performance issue in [HDFS-15486](https://issues.apache.org/jira/browse/HDFS-15486). Within `channelIO(null, channel, buffer)`, the large payload is split into multiple parts, and it will won't jump out of the loop until the remaining part of payload does not exceed the buffer limit, meaning that it's waiting for the network to finish sending some content. I'm not sure whether it can defend my argument. Can you provide more explanation? Maybe I'm not correct. Thanks! -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-issues-h...@hadoop.apache.org