Artyom Safronov created QPID-8097:
-------------------------------------
Summary: NullPointerException in AMQP 1.0 plugin using OpenJDK
Key: QPID-8097
URL: https://issues.apache.org/jira/browse/QPID-8097
Project: Qpid
Issue Type: Bug
Components: Broker-J
Affects Versions: qpid-java-6.1.5
Reporter: Artyom Safronov
Attachments: Qpid stacktrace.txt
An unexpected NullPointerException occures in AMQP 1.0 plugin at the first
attempt to connect to the broker using *OpenJDK*.
The problem was found while running Qpid in unit tests that verify code
communicated with the broker through AQMP. There is a test case that starts
Qpid before each test and stops it after it. That test case verifies a module
that establishes a connection with the broker. The broker refuses the
connection because of NullPointerException (see the attached stacktrace). Under
*Oracle JDK* all tests run fine.
+The first strange+ thing looks like this. Only a test that does the first
attempt to connect always fails. The rest tests run successfully although Qpid
are restarted. So the order of tests is not important. The project is built
using Maven and all its plugins are run within a single process (without fork
ability).
+The second strange+ thing is that the behaivor of Qpid slightly differs under
two different *OpenJDK* versions.
In a case of *1.8.0_131* version the broker accepts a transport connection but
rejects "OPEN" frame with the next error:
{code:java}
io.vertx.core.impl.NoStackTraceThrowable: Error{condition=amqp:not-found,
description='Unknown hostname in connection open: 'default'', info=null}
{code}
In a case of *1.8.0_161* version the broker rejects a transport connection
instantly with the next exception:
{code:java}
io.vertx.core.VertxException: Disconnected
at
io.vertx.proton.impl.ProtonClientImpl.lambda$null$0(ProtonClientImpl.java:80)
~[vertx-proton-3.5.0.jar:?]
at
io.vertx.proton.impl.ProtonConnectionImpl.fireDisconnect(ProtonConnectionImpl.java:374)
~[vertx-proton-3.5.0.jar:?]
at
io.vertx.proton.impl.ProtonTransport.handleSocketEnd(ProtonTransport.java:89)
~[vertx-proton-3.5.0.jar:?]
at io.vertx.core.net.impl.NetSocketImpl.handleClosed(NetSocketImpl.java:345)
~[vertx-core-3.5.0.jar:?]
at io.vertx.core.impl.ContextImpl.lambda$wrapTask$2(ContextImpl.java:342)
~[vertx-core-3.5.0.jar:?]
at io.vertx.core.impl.ContextImpl.executeFromIO(ContextImpl.java:200)
[vertx-core-3.5.0.jar:?]
at io.vertx.core.net.impl.VertxHandler.channelInactive(VertxHandler.java:134)
[vertx-core-3.5.0.jar:?]
at
io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:245)
[netty-transport-4.1.15.Final.jar:4.1.15.Final]
at
io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:231)
[netty-transport-4.1.15.Final.jar:4.1.15.Final]
at
io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:224)
[netty-transport-4.1.15.Final.jar:4.1.15.Final]
at
io.netty.channel.DefaultChannelPipeline$HeadContext.channelInactive(DefaultChannelPipeline.java:1354)
[netty-transport-4.1.15.Final.jar:4.1.15.Final]
at
io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:245)
[netty-transport-4.1.15.Final.jar:4.1.15.Final]
at
io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:231)
[netty-transport-4.1.15.Final.jar:4.1.15.Final]
at
io.netty.channel.DefaultChannelPipeline.fireChannelInactive(DefaultChannelPipeline.java:917)
[netty-transport-4.1.15.Final.jar:4.1.15.Final]
at
io.netty.channel.AbstractChannel$AbstractUnsafe$7.run(AbstractChannel.java:763)
[netty-transport-4.1.15.Final.jar:4.1.15.Final]
at
io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)
[netty-common-4.1.15.Final.jar:4.1.15.Final]
at
io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:403)
[netty-common-4.1.15.Final.jar:4.1.15.Final]
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:463)
[netty-transport-4.1.15.Final.jar:4.1.15.Final]
at
io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:858)
[netty-common-4.1.15.Final.jar:4.1.15.Final]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_161-debug]{code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]