Fix NettyRemotingClient might throw IllegalMonitorStateException (#16038)

This commit is contained in:
Wenjun Ruan 2024-05-22 10:26:04 +08:00 committed by GitHub
parent 0fc2fe971a
commit 56ecec779c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 4 additions and 7 deletions

View File

@ -141,7 +141,7 @@ public class NettyRemotingClient implements AutoCloseable {
return iRpcResponse;
}
private Channel getOrCreateChannel(Host host) {
Channel getOrCreateChannel(Host host) {
Channel channel = channels.get(host);
if (channel != null && channel.isActive()) {
return channel;
@ -166,13 +166,10 @@ public class NettyRemotingClient implements AutoCloseable {
* @param host host
* @return channel
*/
private Channel createChannel(Host host) {
Channel createChannel(Host host) {
try {
ChannelFuture future;
synchronized (bootstrap) {
future = bootstrap.connect(new InetSocketAddress(host.getIp(), host.getPort()));
}
future.await(clientConfig.getConnectTimeoutMillis());
ChannelFuture future = bootstrap.connect(new InetSocketAddress(host.getIp(), host.getPort()));
future = future.sync();
if (future.isSuccess()) {
return future.channel();
} else {