This is an automated email from the ASF dual-hosted git repository.
zrlw pushed a commit to branch 3.3
in repository https://gitbox.apache.org/repos/asf/dubbo.git
The following commit(s) were added to refs/heads/3.3 by this push:
new 6a70f6b217 Call ByteBuf#release method before garbage collecting
(#15917)
6a70f6b217 is described below
commit 6a70f6b217781fc35cc65bb464eb611512d91a3d
Author: qxggg <[email protected]>
AuthorDate: Tue Dec 30 14:04:53 2025 +0800
Call ByteBuf#release method before garbage collecting (#15917)
---
.../apache/dubbo/remoting/http12/netty4/h1/NettyHttp1Channel.java | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git
a/dubbo-remoting/dubbo-remoting-http12/src/main/java/org/apache/dubbo/remoting/http12/netty4/h1/NettyHttp1Channel.java
b/dubbo-remoting/dubbo-remoting-http12/src/main/java/org/apache/dubbo/remoting/http12/netty4/h1/NettyHttp1Channel.java
index 19d0c807d0..58e28bb629 100644
---
a/dubbo-remoting/dubbo-remoting-http12/src/main/java/org/apache/dubbo/remoting/http12/netty4/h1/NettyHttp1Channel.java
+++
b/dubbo-remoting/dubbo-remoting-http12/src/main/java/org/apache/dubbo/remoting/http12/netty4/h1/NettyHttp1Channel.java
@@ -28,6 +28,7 @@ import java.net.SocketAddress;
import java.util.concurrent.CompletableFuture;
import io.netty.channel.Channel;
+import io.netty.channel.ChannelFuture;
public class NettyHttp1Channel implements HttpChannel {
@@ -50,7 +51,12 @@ public class NettyHttp1Channel implements HttpChannel {
@Override
public CompletableFuture<Void> writeMessage(HttpOutputMessage
httpOutputMessage) {
NettyHttpChannelFutureListener nettyHttpChannelFutureListener = new
NettyHttpChannelFutureListener();
-
this.channel.writeAndFlush(httpOutputMessage).addListener(nettyHttpChannelFutureListener);
+
this.channel.writeAndFlush(httpOutputMessage).addListener((ChannelFuture
future) -> {
+ if (!future.isSuccess()) {
+ httpOutputMessage.close();
+ }
+ nettyHttpChannelFutureListener.operationComplete(future);
+ });
return nettyHttpChannelFutureListener;
}