Uploaded image for project: 'AMQ Broker'
  1. AMQ Broker
  2. ENTMQBR-579

Broker fails to move expired messages sent with qpid-jms to expiry queue

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: Blocker Blocker
    • None
    • None
    • None
    • None
    • Hide

      Execute aac1.jar sender --log-msgs dict --broker 127.0.0.1:5672 --address "test_dead_letter_queue_with_expired_messages" --msg-ttl 1 and wait few seconds.

      Show
      Execute aac1.jar sender --log-msgs dict --broker 127.0.0.1:5672 --address "test_dead_letter_queue_with_expired_messages" --msg-ttl 1 and wait few seconds.

      When sending a message with TTL using qpid-jms client, broker prints following exception and message seems to be lost.

      INFO  | main | Initialized artemis-plugin plugin
      INFO  | main | Initialized dispatch-hawtio-console plugin
      10:43:43,871 INFO  [org.apache.activemq.artemis] AMQ241001: HTTP Server started at http://localhost:8161
      10:43:43,872 INFO  [org.apache.activemq.artemis] AMQ241002: Artemis Jolokia REST API available at http://localhost:8161/jolokia
      10:43:51,825 WARN  [org.apache.activemq.artemis.core.client] AMQ212037: Connection failure has been detected: null [code=REMOTE_DISCONNECT]
      
      
      
      
      10:44:02,227 WARN  [org.apache.activemq.artemis.core.client] AMQ212037: Connection failure has been detected: null [code=REMOTE_DISCONNECT]
      10:44:12,275 WARN  [org.apache.activemq.artemis.core.server] AMQ222145: Error expiring reference Reference[14]:RELIABLE:org.apache.activemq.artemis.protocol.amqp.broker.AMQPMessage@10073e8c 0n queue: java.lang.UnsupportedOperationException
              at java.util.AbstractMap.put(AbstractMap.java:209) [rt.jar:1.8.0_121]
              at org.apache.activemq.artemis.protocol.amqp.broker.AMQPMessage.putStringProperty(AMQPMessage.java:616) [artemis-amqp-protocol-2.0.0.amq-700002-redhat-1.jar:]
              at org.apache.activemq.artemis.api.core.Message.referenceOriginalMessage(Message.java:368) [artemis-core-client-2.0.0.amq-700002-redhat-1.jar:2.0.0.amq-700002-redhat-1]
              at org.apache.activemq.artemis.core.server.impl.QueueImpl.makeCopy(QueueImpl.java:2491) [artemis-server-2.0.0.amq-700002-redhat-1.jar:2.0.0.amq-700002-redhat-1]
              at org.apache.activemq.artemis.core.server.impl.QueueImpl.makeCopy(QueueImpl.java:2470) [artemis-server-2.0.0.amq-700002-redhat-1.jar:2.0.0.amq-700002-redhat-1]
              at org.apache.activemq.artemis.core.server.impl.QueueImpl.move(QueueImpl.java:2558) [artemis-server-2.0.0.amq-700002-redhat-1.jar:2.0.0.amq-700002-redhat-1]
              at org.apache.activemq.artemis.core.server.impl.QueueImpl.expire(QueueImpl.java:1184) [artemis-server-2.0.0.amq-700002-redhat-1.jar:2.0.0.amq-700002-redhat-1]
              at org.apache.activemq.artemis.core.server.impl.QueueImpl$ExpiryScanner.run(QueueImpl.java:1578) [artemis-server-2.0.0.amq-700002-redhat-1.jar:2.0.0.amq-700002-redhat-1]
              at org.apache.activemq.artemis.utils.OrderedExecutorFactory$OrderedExecutor$ExecutorTask.run(OrderedExecutorFactory.java:101) [artemis-commons-2.0.0.amq-700002-redhat-1.jar:2.0.0.amq-700002-redhat-1]
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [rt.jar:1.8.0_121]
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [rt.jar:1.8.0_121]
              at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_121]
      

              rh-ee-ataylor Andy Taylor
              jdanek@redhat.com Jiri Daněk
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: