KahaDB corrupted when too many messages accumulate: EOFException
----------------------------------------------------------------

                 Key: AMQ-2945
                 URL: https://issues.apache.org/activemq/browse/AMQ-2945
             Project: ActiveMQ
          Issue Type: Bug
          Components: Message Store
    Affects Versions: 5.4.1, 5.4.0
         Environment: Windows XP, running as service.
            Reporter: John Fletcher


I am finding the KahaDB on a broker is becoming corrupted after a certain time 
of being disconnected (or perhaps rather, after a certain amount of messages 
are queued up). My config is extremely simple - originally 5.4.0 and now 5.4.1 
on Windows with the default config, except adding a connection to a broker on 
an external machine with
<networkConnectors>
  <networkConnector uri="static:(tcp://machine1:61616,tcp://machine2:61616)"/>
</networkConnectors>

In this case the external machine/consumer is only on during business hours 
whereas the broker producing the messages is on 24/7. We're finding that 
generally the producer instance survives weeknights, during which it 
accumulates about 75,000 messages and then offloads them in the morning to
the consumer instance, but not weekends. Last time it failed after about 
collecting about 160,000 messages.

I get the excepton: ERROR | Failed to start ActiveMQ JMS Message Broker. 
Reason: java.io.EOFException: Chunk stream does not exist at page: 0 | 
org.apache.activemq.broker.BrokerService | WrapperSimpleAppMain - and plenty 
more, I'll attach the log.

On 5.4.0 I found that only after deleting the file db.data was I able to 
restart the broker again. On one test run on 5.4.1 I'm finding that deleting 
db.data is not solving the problem.

I noticed two other users described experiencing exactly the same problem:
http://activemq.2283324.n4.nabble.com/Kaha-corruption-in-5-4-SNAPSHOT-td2366036.htm

To replicate the problem, I think it would probably suffice to start a broker 
with default config and let 300,000 messages accumulate without being consumed 
- I'm guessing the problem should occur before you get there. But perhaps 
you'll need to create a networkconnector as I have done and try the same thing. 
Will attach log...

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to