Hi Nilantha,

in this configuration, messages are always written to a journal, so the broker can be recovered in case of an outage. Messages are kept in memory also for performance. Messages are moved to the long term store (in this case JDBC) periodically. As long as the journal file (s) are intact, recovery shouldn't not be an issue

cheers,

Rob
On 30 Jan 2007, at 18:35, Nilantha Jayalath wrote:

I am testing JDBC persistence with one broker and my
"persistenceAdapter' configuration is as follows,
    <persistenceAdapter>

      <journaledJDBC journalLogFiles="5"  dataSource="#oracle-ds"/>

    </persistenceAdapter>

I have noticed following at one point When I sent some 50000 messages
without consuming.

No of messages in DB( in "ACTIVEMQ_MSGS"): 43764
Total in queue: 51128 (through Jconsole)

After some time all the messages were available in DB. It appears that
broker keeps messages in memory until it close to allowable memory limit
and then flush into the DB(more than 10k some times depend on the
message size ). Is there a way I could force DB persistence without
keeping messages in memory.

My concern is in case of a hardware failure those in memory messages
could be lost?

Thanks in advance for any idea on this. Broker on Win XP Professional



-Nilantha


Reply via email to