Michael Frankfurter created CAMEL-10179:
-------------------------------------------
Summary: Frequent BlockingOperationExceptions under load in
NettyProducer.openChannel()
Key: CAMEL-10179
URL: https://issues.apache.org/jira/browse/CAMEL-10179
Project: Camel
Issue Type: Bug
Components: camel-netty4
Affects Versions: 2.17.2
Reporter: Michael Frankfurter
I have a class that uses a netty4 producer. While doing some load testing, I
started seeing a lot of stack traces like the following:
{code}
io.netty.util.concurrent.BlockingOperationException:
DefaultChannelPromise@3ee2397e(incomplete)
at
io.netty.util.concurrent.DefaultPromise.checkDeadLock(DefaultPromise.java:391)
~[netty-all-4.0.34.Final.jar:4.0.34.Final]
at
io.netty.channel.DefaultChannelPromise.checkDeadLock(DefaultChannelPromise.java:157)
~[netty-all-4.0.34.Final.jar:4.0.34.Final]
at
io.netty.util.concurrent.DefaultPromise.awaitUninterruptibly(DefaultPromise.java:284)
~[netty-all-4.0.34.Final.jar:4.0.34.Final]
at
io.netty.channel.DefaultChannelPromise.awaitUninterruptibly(DefaultChannelPromise.java:135)
~[netty-all-4.0.34.Final.jar:4.0.34.Final]
at
io.netty.channel.DefaultChannelPromise.awaitUninterruptibly(DefaultChannelPromise.java:28)
~[netty-all-4.0.34.Final.jar:4.0.34.Final]
at
org.apache.camel.component.netty4.NettyProducer.openChannel(NettyProducer.java:468)
~[camel-netty4-2.17.1.jar:2.17.1]
...
{code}
It seems to be the same like in CAMEL-8193 but during the opening phase, not
the closing phase.
I had a look at `org.apache.camel.component.netty4.NettyProducer.openChannel(),
line 468` and maybe using `channelFuture..addListener(...)` instead of
`channelFuture.awaitUninterruptibly();` at that point may fix this issue.
Would be great if somebody could take a look.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)