You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2023/08/18 04:22:18 UTC
[camel] branch camel-4.0.x updated: CAMEL-19758: netty-http in proxy mode generates IllegalReferenceCountException for every success request. (#11146)
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch camel-4.0.x
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/camel-4.0.x by this push:
new d83d94ec3d4 CAMEL-19758: netty-http in proxy mode generates IllegalReferenceCountException for every success request. (#11146)
d83d94ec3d4 is described below
commit d83d94ec3d4f6a9175cc95ce38b90e34f9df17be
Author: Luigi De Masi <55...@users.noreply.github.com>
AuthorDate: Fri Aug 18 06:21:34 2023 +0200
CAMEL-19758: netty-http in proxy mode generates IllegalReferenceCountException for every success request. (#11146)
---
.../apache/camel/component/netty/http/DefaultNettyHttpBinding.java | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/components/camel-netty-http/src/main/java/org/apache/camel/component/netty/http/DefaultNettyHttpBinding.java b/components/camel-netty-http/src/main/java/org/apache/camel/component/netty/http/DefaultNettyHttpBinding.java
index a0817b20a28..33a420d5f8e 100644
--- a/components/camel-netty-http/src/main/java/org/apache/camel/component/netty/http/DefaultNettyHttpBinding.java
+++ b/components/camel-netty-http/src/main/java/org/apache/camel/component/netty/http/DefaultNettyHttpBinding.java
@@ -107,7 +107,10 @@ public class DefaultNettyHttpBinding implements NettyHttpBinding, Cloneable {
exchange.getExchangeExtension().addOnCompletion(new SynchronizationAdapter() {
@Override
public void onDone(Exchange exchange) {
- ReferenceCountUtil.release(request.content());
+ if (request.content().refCnt() > 0) {
+ LOG.debug("Releasing Netty HttpResponse ByteBuf");
+ ReferenceCountUtil.release(request.content());
+ }
}
});
} else {