5 Replies Latest reply on May 3, 2010 1:39 AM by Viswanath Durbha

    Message Expiry In Cluster

    Viswanath Durbha Newbie



      I have two HornetQ instances in a symmetric cluster. The configuration files are attached. I have ExpiryQueue setup as the expiry address for ExampleQueue. When I send a message to ExampleQueue with an expiry of 1 sec (producer.setTimeToLive(1000)), I get the following exception in the log files of one of the clusters.


      [hornetq-expiry-reaper-thread] 17:22:18,378 SEVERE [org.hornetq.core.postoffice.impl.PostOfficeImpl]  failed to expire messages for queue jms.queue.ExampleQueue
              at java.nio.ByteBuffer.wrap(ByteBuffer.java:390)
              at org.hornetq.core.postoffice.impl.BindingsImpl.routeFromCluster(BindingsImpl.java:464)
              at org.hornetq.core.postoffice.impl.BindingsImpl.route(BindingsImpl.java:243)
              at org.hornetq.core.postoffice.impl.PostOfficeImpl.route(PostOfficeImpl.java:631)
              at org.hornetq.core.postoffice.impl.PostOfficeImpl.route(PostOfficeImpl.java:539)
              at org.hornetq.core.server.impl.QueueImpl.move(QueueImpl.java:1071)
              at org.hornetq.core.server.impl.QueueImpl.expire(QueueImpl.java:581)
              at org.hornetq.core.server.impl.QueueImpl.expireReferences(QueueImpl.java:723)
              at org.hornetq.core.postoffice.impl.PostOfficeImpl$Reaper.run(PostOfficeImpl.java:1089)
              at java.lang.Thread.run(Thread.java:636)


      The message expiry works occasionally, but it gives the above exception most of the times. I'd like to create a test case to demonstrate this problem with some consistency, but I thought if someone can catch a glaring problem with my configuration, I thought I can save the trouble.