1 Reply Latest reply on Nov 27, 2009 6:16 AM by Jeff Mesnil

    Symmetric cluster example fails

    Andy Taylor Master

      This fails for a couple of reasons which are

      1. The bridge makes its queue non durable so this isnt replicated so when the cluster connection fails over it cant create its consumer and thus the messages dont get redistributed.

      2. The Consumers in the test are non durable so only use temp queues which again arent replicated.

      If i hack the code to fix those issues i then get the following error

      [java] HornetQServer_1 err:[Thread-3 (group:HornetQ-server-threads26089635-32739270)] 10:51:22,619 SEVERE [org.hornetq.core.server.impl.HornetQPacketHandler] Failed to reattach session
       [java] HornetQServer_1 err:java.lang.IllegalStateException: Journal must be loaded first
       [java] HornetQServer_1 err: at org.hornetq.core.journal.impl.JournalImpl.appendAddRecord(JournalImpl.java:875)
       [java] HornetQServer_1 err: at org.hornetq.core.persistence.impl.journal.JournalStorageManager.storeMessage(JournalStorageManager.java:493)
       [java] HornetQServer_1 err: at org.hornetq.core.postoffice.impl.PostOfficeImpl.processRoute(PostOfficeImpl.java:914)
       [java] HornetQServer_1 err: at org.hornetq.core.postoffice.impl.PostOfficeImpl.route(PostOfficeImpl.java:676)
       [java] HornetQServer_1 err: at org.hornetq.core.postoffice.impl.PostOfficeImpl.route(PostOfficeImpl.java:542)
       [java] HornetQServer_1 err: at org.hornetq.core.management.impl.ManagementServiceImpl.sendNotification(ManagementServiceImpl.java:743)
       [java] HornetQServer_1 err: at org.hornetq.core.postoffice.impl.PostOfficeImpl.addBinding(PostOfficeImpl.java:472)
       [java] HornetQServer_1 err: at org.hornetq.core.server.impl.HornetQServerImpl.loadJournals(HornetQServerImpl.java:1245)
       [java] HornetQServer_1 err: at org.hornetq.core.server.impl.HornetQServerImpl.initialisePart2(HornetQServerImpl.java:1129)
       [java] HornetQServer_1 err: at org.hornetq.core.server.impl.HornetQServerImpl.checkActivate(HornetQServerImpl.java:985)
       [java] HornetQServer_1 err: at org.hornetq.core.server.impl.HornetQServerImpl.reattachSession(HornetQServerImpl.java:565)
       [java] HornetQServer_1 err: at org.hornetq.core.server.impl.HornetQPacketHandler.handleReattachSession(HornetQPacketHandler.java:154)
       [java] HornetQServer_1 err: at org.hornetq.core.server.impl.HornetQPacketHandler.handlePacket(HornetQPacketHandler.java:82)
       [java] HornetQServer_1 err: at org.hornetq.core.remoting.impl.ChannelImpl.handlePacket(ChannelImpl.java:460)
       [java] HornetQServer_1 err: at org.hornetq.core.remoting.impl.RemotingConnectionImpl.doBufferReceived(RemotingConnectionImpl.java:382)
       [java] HornetQServer_1 err: at org.hornetq.core.remoting.impl.RemotingConnectionImpl.access$000(RemotingConnectionImpl.java:41)
       [java] HornetQServer_1 err: at org.hornetq.core.remoting.impl.RemotingConnectionImpl$1.run(RemotingConnectionImpl.java:344)
       [java] HornetQServer_1 err: at org.hornetq.utils.OrderedExecutorFactory$OrderedExecutor$1.run(OrderedExecutorFactory.java:96)
       [java] HornetQServer_1 err: at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
       [java] HornetQServer_1 err: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
       [java] HornetQServer_1 err: at java.lang.Thread.run(Thread.java:595)
       [java] HornetQServer_5 err:[Thread-3] 10:51:22,620 INFO [org.hornetq.core.client.impl.ClientSessionImpl] failing over creating new session
      


        • 1. Re: Symmetric cluster example fails
          Jeff Mesnil Master

          there is a mismatch wrt to failover in the examples.
          Here is their current status:

          * application-level-failover
          => this one handles failover at JMS level. It is up to date

          * automatic-failover
          => this one was based on previous replication code. It has been superseded by transaction-failover and non-transaction-failover and must be removed

          * non-transaction-failover
          => based on new code when using non-tx session. up to date.

          * reconnect-same-code
          => show session reconnection to same node. Only the example readme must be updated as it still talks about automatic failover

          * symmetric-cluster
          => the example is still based on old code and expect automatic failover. it must be updated based on new replication semantic (or remove failover from the example...)

          * transaction-failover
          => based on new code when using tx session. up to date.