From 630e14ae404d71dbd7229e3205468b3069b60676 Mon Sep 17 00:00:00 2001 From: Albumen Kevin Date: Mon, 17 Jul 2023 11:35:03 +0800 Subject: [PATCH] Fix netty close when init count is 0 (#12737) --- .../remoting/api/connection/AbstractConnectionClient.java | 3 +++ .../dubbo/remoting/transport/netty4/NettyConnectionClient.java | 1 + 2 files changed, 4 insertions(+) diff --git a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/api/connection/AbstractConnectionClient.java b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/api/connection/AbstractConnectionClient.java index 4226ed3eb6..66e9b3a410 100644 --- a/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/api/connection/AbstractConnectionClient.java +++ b/dubbo-remoting/dubbo-remoting-api/src/main/java/org/apache/dubbo/remoting/api/connection/AbstractConnectionClient.java @@ -49,6 +49,9 @@ public abstract class AbstractConnectionClient extends AbstractClient { protected AbstractConnectionClient(URL url, ChannelHandler handler) throws RemotingException { super(url, handler); + } + + public final void increase() { COUNTER_UPDATER.set(this, 1L); } diff --git a/dubbo-remoting/dubbo-remoting-netty4/src/main/java/org/apache/dubbo/remoting/transport/netty4/NettyConnectionClient.java b/dubbo-remoting/dubbo-remoting-netty4/src/main/java/org/apache/dubbo/remoting/transport/netty4/NettyConnectionClient.java index ebc0a2b793..b1da49c8a5 100644 --- a/dubbo-remoting/dubbo-remoting-netty4/src/main/java/org/apache/dubbo/remoting/transport/netty4/NettyConnectionClient.java +++ b/dubbo-remoting/dubbo-remoting-netty4/src/main/java/org/apache/dubbo/remoting/transport/netty4/NettyConnectionClient.java @@ -89,6 +89,7 @@ public class NettyConnectionClient extends AbstractConnectionClient { this.channel = new AtomicReference<>(); this.closePromise = new DefaultPromise<>(GlobalEventExecutor.INSTANCE); this.init = new AtomicBoolean(false); + this.increase(); } @Override