3 Replies Latest reply on Jun 17, 2011 3:23 AM by carl.heymann

    Inconsistency during compacting

    carl.heymann

      Hi

       

      I just restarted a stand-alone, non-clustered 2.2.2.Final hornetq instance on my local machine, and got a "Failure in initialisation" exception. While it was still running (before restart), I saw these logs:

       

      [JournalImpl::CompactorExecutor] 15:17:23,545 WARNING [org.hornetq.core.journal.impl.JournalCompactor]  Inconsistency during compacting: Delete record being read on an existent record (id=2150349698)

      [JournalImpl::CompactorExecutor] 15:17:23,715 WARNING [org.hornetq.core.journal.impl.JournalCompactor]  Inconsistency during compacting: Delete record being read on an existent record (id=2150374295)

       

      Then, during startup, I got this:

       

      [main] 18:23:27,914 INFO [org.hornetq.core.server.impl.AIOFileLockNodeManager]  Live Server Obtained live lock

      [main] 18:23:33,309 SEVERE [org.hornetq.core.server.impl.HornetQServerImpl]  Failure in initialisation

      java.lang.IllegalStateException: Cannot find queue messages 5

                at org.hornetq.core.persistence.impl.journal.JournalStorageManager.loadMessageJournal(JournalStorageManager.java:927)

                at org.hornetq.core.server.impl.HornetQServerImpl.loadJournals(HornetQServerImpl.java:1614)

                at org.hornetq.core.server.impl.HornetQServerImpl.initialisePart2(HornetQServerImpl.java:1464)

                at org.hornetq.core.server.impl.HornetQServerImpl.access$100(HornetQServerImpl.java:132)

                at org.hornetq.core.server.impl.HornetQServerImpl$SharedStoreLiveActivation.run(HornetQServerImpl.java:356)

                at org.hornetq.core.server.impl.HornetQServerImpl.start(HornetQServerImpl.java:570)

                at org.hornetq.jms.server.impl.JMSServerManagerImpl.start(JMSServerManagerImpl.java:261)

       

      Subsequent restarts have the same error, and I probably need to wipe the journal files before it will start up smoothly again.

       

      The configuration is standard, except that paging is enabled:

       

            <address-setting match="#">

               <dead-letter-address>jms.queue.DLQ</dead-letter-address>

               <expiry-address>jms.queue.ExpiryQueue</expiry-address>

               <redelivery-delay>1</redelivery-delay>

               <max-size-bytes>10485760</max-size-bytes>

               <page-size-bytes>1048576</page-size-bytes>

               <message-counter-history-day-limit>10</message-counter-history-day-limit>

               <address-full-policy>PAGE</address-full-policy>

            </address-setting>

       

      There are about 50 queues and one topic. Several temporary queues are also created for response routing, but these messages are not durable.

       

      I see that about a year ago there were other discussions with the same "cannot find queue messages" logs (http://community.jboss.org/message/72653, http://community.jboss.org/thread/152326) but I understand the issues were corrected.

       

      Unfortunately, I cannot reproduce this, so this post may not be worth much. It has only happened once now. One thing that may be of interest, is that this is running on my laptop, and I placed it into stand-by overnight, with hornetq running, which I assume the system wasn't necessarily designed for.

       

      Is this a cause for concern? I don't like having to delete messages..

       

      Thanks