Hi Dave, Unfortunately I haven't been able to reproduce this with a unit test. You were likely correct when you said that it's a race condition causing the problem. I'm currently in the process of setting up the broker on another machine that has less running on it. There is a chance that it's caused by a conflict with another app (eg. a virus scan or automatic backup) which causes file contention.
My load is fairly light for most of the day, peaks of about 10-15 messages/second. There is a nightly batch process that is significantly higher load. It publishes ~400K messages in the span of 1/2 an hour, peaks of about 500 messages/second. Messages are all fairly small, just serialized .NET objects containing only primitive types. My config file is listed below. Thanks so much for your help Dave. One of the major reasons I selected to use ActiveMQ in the first place was the community support. Your help is greatly appreciated. Cheers, Stefan <beans xmlns="http://www.springframework.org/schema/beans" xmlns:amq="http://activemq.apache.org/schema/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd http://activemq.apache.org/camel/schema/spring http://activemq.apache.org/camel/schema/spring/camel-spring.xsd"> <!-- Allows us to use system properties as variables in this configuration file --> <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/> <broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost" dedicatedTaskRunner="false" dataDirectory="${activemq.base}/data"> <!-- Destination specific policies using destination names or wildcards --> <destinationPolicy> <policyMap> <policyEntries> <policyEntry topic=">"> <dispatchPolicy> <strictOrderDispatchPolicy /> </dispatchPolicy> <subscriptionRecoveryPolicy> <lastImageSubscriptionRecoveryPolicy /> </subscriptionRecoveryPolicy> </policyEntry> </policyEntries> </policyMap> </destinationPolicy> <!-- Use the following to configure how ActiveMQ is exposed in JMX --> <managementContext> <managementContext connectorPort="1099" jmxDomainName="org.apache.activemq"/> </managementContext> <persistenceAdapter> <amqPersistenceAdapter directory="${activemq.base}/data" indexBinSize="131072" archiveDataLogs="true" directoryArchive="${activemq.base}/data/archive" /> </persistenceAdapter> <!-- The maximum about of space the broker will use before slowing down producers --> <systemUsage> <systemUsage> <memoryUsage> <memoryUsage limit="200 mb"/> </memoryUsage> <storeUsage> <storeUsage limit="5 gb" /> </storeUsage> <tempUsage> <tempUsage limit="500 mb"/> </tempUsage> </systemUsage> </systemUsage> <!-- The transport connectors ActiveMQ will listen to --> <transportConnectors> <transportConnector name="openwire" uri="tcp://localhost:61616" discoveryUri="multicast://default"/> </transportConnectors> </broker> <!-- An embedded servlet engine for serving up the Admin console --> <jetty xmlns="http://mortbay.com/schemas/jetty/1.0"> <connectors> <nioConnector port="8161"/> </connectors> <handlers> <webAppContext contextPath="/admin" resourceBase="${activemq.base}/webapps/admin" logUrlOnStart="true"/> <webAppContext contextPath="/demo" resourceBase="${activemq.base}/webapps/demo" logUrlOnStart="true"/> <webAppContext contextPath="/fileserver" resourceBase="${activemq.base}/webapps/fileserver" logUrlOnStart="true"/> </handlers> </jetty> </beans> Dave Stanley wrote: > > Hi Stefan, > Is it possible to reproduce with a Junit. It would be great to get a > testcase & jira logged for this one. Can you post a summary of your > broker > config (activemq.xml) and the amount of load your putting on the broker? > > Cheer's, > /Dave > > On Fri, Apr 17, 2009 at 1:04 PM, stefan.moser > <stefan.mo...@wolverton.ca>wrote: > >> >> Bad news. After running fine as a standalone broker for two days, it >> died >> again today with the same error. I've tried the syncOnWrite=true >> setting, >> but it slows down the broker too much for what is acceptable in my >> system. >> I think I'm pretty much out of options. >> >> Stefan >> >> >> >> Dave Stanley wrote: >> > >> > It seems as though your message store has been corrupted. You will >> > probably >> > need to wipe the <AMQ>/data directory to start from a clean >> > >> > In order to try and narrow down why this might be occurring: >> > >> > 1) Try test without the java service wrapper (standalone broker) and >> see >> > if >> > it makes any difference >> > 2) Try and enable syncOnWrite=true for the persistenceAdapter and see >> if >> > that helps >> > 3) Can you post some specs on the machine your using for your tests..is >> it >> > particularly fast? anything unusual about the disk setup? >> > 4) How are you stopping your broker. Are you using the windows scm (or >> > killing it using the windows task manager ..). >> > >> > Hope this helps, >> > /Dave >> > >> > >> > On Tue, Apr 14, 2009 at 4:19 PM, stefan.moser >> > <stefan.mo...@wolverton.ca>wrote: >> > >> >> >> >> In the http://activemq.apache.org/amq-message-store.html >> documentation >> >> for >> >> the AMQ Message Store, it mentions that it uses Kaha by default for >> the >> >> reference store. I'm assuming then that there are other options for >> the >> >> reference store, but I can't find any mention of them. I'm new to >> >> ActiveMQ, >> >> so maybe I'm just not recognizing the lingo. >> >> >> >> The reason why I would like to look at other reference stores is that >> I'm >> >> currently experiencing a halting problem with my current AMQ Message >> >> Store >> >> setup, >> >> >> >> >> http://www.nabble.com/Could-not-locate-data-file-data-topic-data-X-tt22916586.html >> >> detailed here . I've tried switching to JDBC persistence using Derby, >> >> but >> >> it's too slow for my needs. >> >> >> >> Can someone please help! >> >> >> >> Cheers, >> >> Stefan >> >> -- >> >> View this message in context: >> >> >> http://www.nabble.com/Changing-the-reference-store-for-the-AMQ-Message-Store-tp23047210p23047210.html >> >> Sent from the ActiveMQ - User mailing list archive at Nabble.com. >> >> >> >> >> > >> > >> >> -- >> View this message in context: >> http://www.nabble.com/Changing-the-reference-store-for-the-AMQ-Message-Store-tp23047210p23101745.html >> Sent from the ActiveMQ - User mailing list archive at Nabble.com. >> >> > > -- View this message in context: http://www.nabble.com/Changing-the-reference-store-for-the-AMQ-Message-Store-tp23047210p23140854.html Sent from the ActiveMQ - User mailing list archive at Nabble.com.