Details
-
Bug
-
Resolution: Done
-
Major
-
JBoss A-MQ 6.0
-
None
-
None
Description
We are using the vmcursor with the jdbc persistence adapter. If I push 40K (10K messages) into the store and ctrl-c the broker. It takes in the order of 30 minutes for the broker to recover.If I switch to the store based cursor, it takes < 1 minute for the broker to come back up. It seems the vmcursor is doing excessive recovery.This issue is to investigate jdbc store recovery performance when using the vmcursor.Steps to reproduce:1) Setup broker with a jdbc store (e.g. mysql)
2) Use producer tool to send 40K (10K messages) into the store
3) Ctrl-c the broker
4) Restart the broker. In the logs will see slowness on restart e.g..| 2013-05-29 12:55:35,947 | INFO | Attempting to acquire the exclusive lock to become the Master broker | org.apache.activemq.store.jdbc.DefaultDatabaseLocker | main|
2013-05-29 12:55:36,002 | INFO | Becoming the master on dataSource: org.apache.commons.dbcp.BasicDataSource@2052d1a4 | org.apache.activemq.store.jdbc.DefaultDatabaseLocker | main |
2013-05-29 12:56:18,996 | INFO | Apache ActiveMQ 5.8.0.redhat-60024 (jdbcBroker, ID:dstanley-mbp.home-50276-1369846536126-0:1) is starting | org.apache.activemq.broker.BrokerService | main |
2013-05-29 13:00:51,607 | INFO | cursor for queue://TEST has recovered 10000 messages. 16% complete | org.apache.activemq.broker.region.Queue | main |
5) Switch to default store cursor. Note startup time is many times faster.