All,

New to ActiveMQ. First I apologize for long email. I'm evaluating an open source JMS server for a project. I looked several JMS servers and found that ActiveMQ is perfect for our project. I started to play around with ActiveMQ 4.1.0 version. I got a couples of questions.
I looked through the forum and mailing list. I still didn't get answer.

1) what is exact purpose of journal? It seems to me journal and database serve same purpose, persistence. is journal faster than database? Why is journal a short term persistence and database is long term persistence. is it because ActiveMQ recycles journal storage?

2) I used example packaged inside download (producer and consumer) and made it durable. I also configured it to use both journal and database(Mysql). if I started producer and consumer at same time, everything works perfectly. If I first produced 4000 messages (consumer was not started yet), I saw some messages went to journal and some to database. That is perfectly fine. Surprisingly, the latest messages (from message 1200 to 4000) went to database! After I started consumer, consumer was consuming messages starting from message 1. Shortly after less than a couple of hundred messages, I got attached exception. Along with the exception, my PC CPU usage was 100%

I appreciate your help.
Tony


     [java] java.net.SocketException
     [java] MESSAGE: java.net.BindException: Address already in use: connect

     [java] STACKTRACE:

     [java] java.net.SocketException: java.net.BindException: Address already in use: connect
     [java]     at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:156)
     [java]     at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:284)
     [java]     at com.mysql.jdbc.Connection.createNewIO(Connection.java:2555)
     [java]     at com.mysql.jdbc.Connection.<init>(Connection.java:1485)
     [java]     at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266)
     [java]     at org.apache.commons.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:37)
     [java]     at org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:290)
     [java]     at org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:771)
     [java]     at org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:95)
     [java]     at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:544)
     [java]     at org.apache.activemq.store.jdbc.TransactionContext.getConnection(TransactionContext.java:55)
     [java]     at org.apache.activemq.store.jdbc.adapter.DefaultJDBCAdapter.doGetMessage(DefaultJDBCAdapter.java:238)
     [java]     at org.apache.activemq.store.jdbc.JDBCMessageStore.getMessage(JDBCMessageStore.java:100)
     [java]     at org.apache.activemq.store.journal.JournalMessageStore.getMessage(JournalMessageStore.java:329)
     [java]     at org.apache.activemq.broker.region.IndirectMessageReference.incrementReferenceCount(IndirectMessageReference.java:95)
     [java]     at org.apache.activemq.broker.region.QueueSubscription.dispatch(QueueSubscription.java:170)
     [java]     at org.apache.activemq.broker.region.PrefetchSubscription.add(PrefetchSubscription.java:129)
     [java]     at org.apache.activemq.broker.region.Queue.addSubscription(Queue.java:183)
     [java]     at org.apache.activemq.broker.region.AbstractRegion.addConsumer(AbstractRegion.java:233)
     [java]     at org.apache.activemq.broker.region.RegionBroker.addConsumer(RegionBroker.java:328)
     [java]     at org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java:86)
     [java]     at org.apache.activemq.advisory.AdvisoryBroker.addConsumer(AdvisoryBroker.java:78)
     [java]     at org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java:86)
     [java]     at org.apache.activemq.broker.MutableBrokerFilter.addConsumer(MutableBrokerFilter.java:96)
     [java]     at org.apache.activemq.broker.TransportConnection.processAddConsumer(TransportConnection.java:568)
     [java]     at org.apache.activemq.command.ConsumerInfo.visit(ConsumerInfo.java:313)
     [java]     at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:284)
     [java]     at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:177)
     [java]     at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:65)
     [java]     at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:133)
     [java]     at org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:122)
     [java]     at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:84)
     [java]     at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:137)
     [java]     at java.lang.Thread.run(Thread.java:534)


     [java] ** END NESTED EXCEPTION **

Reply via email to