Hi all,

I am planning to use ActiveMQ 5.2.0 in a project and I have made some tests in a windows box to understand how the journal files work.

   I am defining a Journaled JDBC with postgres for persistence this way.

       <persistenceAdapter>
<journaledJDBC journalLogFiles="5" dataDirectory="${activemq.base}/data" dataSource="#postgres-ds"/>
       </persistenceAdapter>

Reading the docs, it seems that the journal files are used for transaction log, and you can define how much files do you want and the size of the files. ActiveMQ does not create new files, so it reuses the old files. This is OK, but I was wondering what happens if the queues (I am going to use only 2 queues) size increase long enough to use all the files in the journal and need more space. It is not a weird scenario, as we are decoupling consumer and producer and consumer can sometines be offline due to maintenance routines. The result is that journal files get overwritten, and many transactions has been lost. When I start the consumer, it begins to consume messages, but the JournalPersistenceAdapater fails everytime it has to execute the checkpoint code:

2009-04-16 18:48:03,140 [eckpoint Worker] ERROR JournalPersistenceAdapter - Failed to mark the Journal: org.apache.activeio.journal.InvalidRecordLocationException: The location is less than the last mark. org.apache.activeio.journal.InvalidRecordLocationException: The location is less than the last mark. at org.apache.activeio.journal.active.JournalImpl.setMark(JournalImpl.java:340) at org.apache.activemq.store.journal.JournalPersistenceAdapter.doCheckpoint(JournalPersistenceAdapter.java:416) at org.apache.activemq.store.journal.JournalPersistenceAdapter$1.iterate(JournalPersistenceAdapter.java:121) at org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:98) at org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner.java:36)


I think the files are corrupted, can you confirm this?
Is the exception related to the problem described?
It is an expected behaviour? Should the maximum number of messages in a queue be considered when configuring the journal?

Thank you very much for your help.

--
-------------------------------------------------------------
Diego Rodríguez Martín (drodrig...@altiria.com)
ALTIRIA TIC - Servicios SMS - Desarrollo Web
www.altiria.com
-------------------------------------------------------------

Reply via email to