Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Later
-
2.18.3
-
None
-
None
-
Unknown
Description
I try to make simple proxy application with netty4-http component to transfer http request with large content.
Example
from(String.format("netty4-http:http://0.0.0.0:%d?httpMethodRestrict=GET,HEAD,POST,PUT,DELETE,TRACE,OPTIONS,CONNECT,PATCH&chunkedMaxContentLength=100000000&disableStreamCache=true", 8081))
.toD("netty4-http:http://somehost:8080/?bridgeEndpoint=true&throwExceptionOnFailure=false&useRelativePath=true").end();
So if i use &disableStreamCache=true option then i get
Camel Thread #3 - NettyClientTCPWorker WARN io.netty.util.concurrent.DefaultPromise - An exception was thrown by org.apache.camel.component.netty4.NettyProducer$ChannelConnectedListener.operationComplete()
io.netty.util.IllegalReferenceCountException: refCnt: 0, decrement: 1
at io.netty.buffer.AbstractReferenceCountedByteBuf.release0(AbstractReferenceCountedByteBuf.java:101)
at io.netty.buffer.AbstractReferenceCountedByteBuf.release(AbstractReferenceCountedByteBuf.java:89)
at io.netty.handler.codec.http.DefaultFullHttpRequest.release(DefaultFullHttpRequest.java:102)
at io.netty.util.ReferenceCountUtil.release(ReferenceCountUtil.java:84)
If i does not use &disableStreamCache=true, all works fine. But for large content i get heap space error.
There are several resolved bugs in camel and netty4 that seems to be related
https://issues.apache.org/jira/browse/CAMEL-10409
and https://issues.apache.org/jira/browse/CAMEL-7638