[
https://issues.apache.org/jira/browse/FLINK-23030?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jin Xing updated FLINK-23030:
-----------------------------
Description:
In current _PartitionRequestClientFactory#createPartitionRequestClient_,
_ChannelFuture#await()_ is invoked, thus to build a connection to remote
synchronously.
But with the doc of _io.netty.util.concurrent.Future_ [1] and its
implementation _io.netty.channel.DefaultChannelPromise_ [2],
_ChannelFuture#await()_ never throws when completed with failure. I guess what
Flink needs is _ChannelFuture#sync()._
[1] [https://netty.io/4.1/api/io/netty/util/concurrent/class-use/Future.html]
[2]
[https://github.com/netty/netty/blob/4.1/transport/src/main/java/io/netty/channel/DefaultChannelPromise.java]
https://github.com/netty/netty/blob/4.1/common/src/main/java/io/netty/util/concurrent/DefaultPromise.java
was:
In current _PartitionRequestClientFactory#createPartitionRequestClient_,
_ChannelFuture#await()_ is invoked, thus to build a connection to remote
synchronously.
But with the doc of _io.netty.util.concurrent.Future_ [1] and its
implementation _io.netty.channel.DefaultChannelPromise_ [2],
_ChannelFuture#await()_ never throws when completed with failure. I guess what
Flink needs is _ChannelFuture#sync()._
[1] [https://netty.io/4.1/api/io/netty/util/concurrent/class-use/Future.html]
[2]
[https://github.com/netty/netty/blob/4.1/transport/src/main/java/io/netty/channel/DefaultChannelPromise.java]
> PartitionRequestClientFactory#createPartitionRequestClient should throw when
> network failure
> --------------------------------------------------------------------------------------------
>
> Key: FLINK-23030
> URL: https://issues.apache.org/jira/browse/FLINK-23030
> Project: Flink
> Issue Type: Bug
> Components: Runtime / Network
> Reporter: Jin Xing
> Priority: Blocker
>
> In current _PartitionRequestClientFactory#createPartitionRequestClient_,
> _ChannelFuture#await()_ is invoked, thus to build a connection to remote
> synchronously.
> But with the doc of _io.netty.util.concurrent.Future_ [1] and its
> implementation _io.netty.channel.DefaultChannelPromise_ [2],
> _ChannelFuture#await()_ never throws when completed with failure. I guess
> what Flink needs is _ChannelFuture#sync()._
> [1] [https://netty.io/4.1/api/io/netty/util/concurrent/class-use/Future.html]
> [2]
> [https://github.com/netty/netty/blob/4.1/transport/src/main/java/io/netty/channel/DefaultChannelPromise.java]
>
> https://github.com/netty/netty/blob/4.1/common/src/main/java/io/netty/util/concurrent/DefaultPromise.java
--
This message was sent by Atlassian Jira
(v8.3.4#803005)