[ 
https://issues.apache.org/jira/browse/ARTEMIS-2866?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jiri Daněk closed ARTEMIS-2866.
-------------------------------
    Resolution: Not A Bug

The behavior does not depend on the broker version. I saw the exact same 
behavior with all versions of broker from 2.8.0 to 2.14.0.

The message {{ERROR - AMQ214015: Failed to execute connection life cycle 
listener}} seems to be harmless and unrelated to my problem. I do not know 
what's causing it, and what to do about it, but it has no bearing on my issue.

My problem was that I was creating the queue on the broker with

{code:java}
Configuration configuration = new ConfigurationImpl();
configuration.addQueueConfiguration(new 
CoreQueueConfiguration().setAddress(someQueue));
{code}

and I ended up with an autocreated address.

When I replaced the above with

{code:java}
configuration.addQueueConfiguration(new QueueConfiguration(someQueue)
            .setAddress(someQueue)
            .setAutoCreated(false)
            .setRoutingType(RoutingType.ANYCAST)
            .setAutoDelete(false)
            .setPurgeOnNoConsumers(false));
{code}

the test failure went away.

The test code is

{noformat}
        // call session.recover and see that the unacked message is returned to 
the queue each time
        JmsConnectionFactory factory = new JmsConnectionFactory(brokerUrl);
        try (Connection connection = factory.createConnection()) {
            connection.start();
            try (Session session = 
connection.createSession(Session.CLIENT_ACKNOWLEDGE)) {
                // this will use up default delivery retry count, message gets 
discarded by the broker
                for (int i = 0; i < 10; i++) {
                    try (MessageConsumer consumer = 
session.createConsumer(destination)) {
                        Message message = consumer.receive(1000);
                        assertThat(message).isNotNull();

                        if (i != 0) {
                            assertThat(message.getJMSRedelivered()).isTrue();
                        }
                        long deliveryCount = 
message.getLongProperty("JMSXDeliveryCount");
                        assertThat(deliveryCount).isEqualTo(i + 1);

                        session.recover();
                    } // close consumer
                }
            }
        }
{noformat}

> AMQ214015: Failed to execute connection life cycle listener
> -----------------------------------------------------------
>
>                 Key: ARTEMIS-2866
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-2866
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>          Components: AMQP
>    Affects Versions: 2.14.0
>            Reporter: Jiri Daněk
>            Priority: Major
>
> I've upgraded Artemis from version 2.10.1 to 2.14.0 and now I started seeing 
> an occasional test failure in my project 
> https://github.com/rh-messaging/cli-java.
> https://travis-ci.org/github/rh-messaging/cli-java/jobs/714822739#L17121
> {noformat}
> ERROR - AMQ214015: Failed to execute connection life cycle listener
> java.lang.NullPointerException
>       at 
> org.apache.activemq.artemis.utils.actors.ProcessorBase.onAddedTaskIfNotRunning(ProcessorBase.java:186)
>       at 
> org.apache.activemq.artemis.utils.actors.ProcessorBase.task(ProcessorBase.java:174)
>       at 
> org.apache.activemq.artemis.utils.actors.OrderedExecutor.execute(OrderedExecutor.java:54)
>       at 
> org.apache.activemq.artemis.core.remoting.impl.netty.ActiveMQChannelHandler.exceptionCaught(ActiveMQChannelHandler.java:106)
>       at 
> io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:302)
>       at 
> io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:264)
>       at 
> io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:248)
>       at 
> io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:241)
>       at 
> io.netty.channel.DefaultChannelPipeline$HeadContext.channelInactive(DefaultChannelPipeline.java:1405)
>       at 
> io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:262)
>       at 
> io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:248)
>       at 
> io.netty.channel.DefaultChannelPipeline.fireChannelInactive(DefaultChannelPipeline.java:901)
>       at 
> io.netty.channel.AbstractChannel$AbstractUnsafe$8.run(AbstractChannel.java:818)
>       at 
> io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164)
>       at 
> io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:472)
>       at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:384)
>       at 
> io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
>       at 
> io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
>       at 
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
> DEBUG - Shutdown of ExecutorService: 
> java.util.concurrent.ThreadPoolExecutor@3c42114d[Shutting down, pool size = 
> 1, active threads = 0, queued tasks = 0, completed tasks = 1] is shutdown: 
> true and terminated: false took: 0.000 seconds.
> DEBUG - Shutdown of ExecutorService: 
> java.util.concurrent.ThreadPoolExecutor@3c42114d[Shutting down, pool size = 
> 1, active threads = 0, queued tasks = 0, completed tasks = 1] is shutdown: 
> true and terminated: false took: 0.000 seconds.
> DEBUG - Shutdown of ExecutorService: 
> java.util.concurrent.ThreadPoolExecutor@3c42114d[Shutting down, pool size = 
> 1, active threads = 0, queued tasks = 0, completed tasks = 1] is shutdown: 
> true and terminated: false took: 0.000 seconds.
> DEBUG - Freed 6 thread-local buffer(s) from thread: AmqpProvider 
> :(3):[amqp://localhost:34728]
> DEBUG - Freed 6 thread-local buffer(s) from thread: AmqpProvider 
> :(3):[amqp://localhost:34728]
> DEBUG - Freed 6 thread-local buffer(s) from thread: AmqpProvider 
> :(3):[amqp://localhost:34728]
> DEBUG - Stopping server 
> ActiveMQServerImpl::serverUUID=5fc3d18c-d65e-11ea-8039-02426c35a891
> DEBUG - Stopping server 
> ActiveMQServerImpl::serverUUID=5fc3d18c-d65e-11ea-8039-02426c35a891
> DEBUG - Stopping server 
> ActiveMQServerImpl::serverUUID=5fc3d18c-d65e-11ea-8039-02426c35a891
> DEBUG - Stopping Cluster Controller 740858526 for server 
> ActiveMQServerImpl::serverUUID=5fc3d18c-d65e-11ea-8039-02426c35a891
> DEBUG - Stopping Cluster Controller 740858526 for server 
> ActiveMQServerImpl::serverUUID=5fc3d18c-d65e-11ea-8039-02426c35a891
> DEBUG - Stopping Cluster Controller 740858526 for server 
> ActiveMQServerImpl::serverUUID=5fc3d18c-d65e-11ea-8039-02426c35a891
> WARN - AMQ222113: On ManagementService stop, there are 1 unexpected 
> registered MBeans: [acceptor.amqp]
> WARN - AMQ222113: On ManagementService stop, there are 1 unexpected 
> registered MBeans: [acceptor.amqp]
> WARN - AMQ222113: On ManagementService stop, there are 1 unexpected 
> registered MBeans: [acceptor.amqp]
> DEBUG - Stopping the lock monitor
> DEBUG - Stopping the lock monitor
> DEBUG - Stopping the lock monitor
> DEBUG - The lock monitor was already stopped
> DEBUG - The lock monitor was already stopped
> DEBUG - The lock monitor was already stopped
> DEBUG - writing status: 80
> DEBUG - writing status: 80
> DEBUG - writing status: 80
> DEBUG - trying to lock position: 0
> DEBUG - trying to lock position: 0
> DEBUG - trying to lock position: 0
> DEBUG - locked position: 0
> DEBUG - locked position: 0
> DEBUG - locked position: 0
> INFO - AMQ221002: Apache ActiveMQ Artemis Message Broker version 2.14.0 
> [5fc3d18c-d65e-11ea-8039-02426c35a891] stopped, uptime 2.730 seconds
> INFO - AMQ221002: Apache ActiveMQ Artemis Message Broker version 2.14.0 
> [5fc3d18c-d65e-11ea-8039-02426c35a891] stopped, uptime 2.730 seconds
> INFO - AMQ221002: Apache ActiveMQ Artemis Message Broker version 2.14.0 
> [5fc3d18c-d65e-11ea-8039-02426c35a891] stopped, uptime 2.730 seconds
> [ERROR] Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 2.739 
> s <<< FAILURE! - in QPIDJMS484Test
> [ERROR] testSendDispositionsAfterRecoverForUnacknowledgedMessages{Broker, 
> Path}  Time elapsed: 2.739 s  <<< FAILURE!
> com.google.common.truth.AssertionErrorWithFacts: expected not to be: null
>       at 
> QPIDJMS484Test.testSendDispositionsAfterRecoverForUnacknowledgedMessages(QPIDJMS484Test.java:94)
> {noformat}
> I will investigate when this started to appear and I will add more details 
> here.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to