Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Incomplete
-
5.10.0
-
None
-
None
-
JDK7, Windows 7
Description
How to produce,
1, Configure activemq
<amq:broker start="false" id="broker" brokerName="testBroker" startAsync="true">
<amq:managementContext>
<amq:managementContext createConnector="false"/>
</amq:managementContext>
<amq:ioExceptionHandler>
<amq:jDBCIOExceptionHandler resumeCheckSleepPeriod="7000"/>
</amq:ioExceptionHandler>
<amq:persistenceAdapter>
<amq:jdbcPersistenceAdapter lockKeepAlivePeriod="5000" dataSource="#ds" dataDirectory="activemq-data">
<amq:locker>
<amq:lease-database-locker maxAllowableDiffFromDBTime="500" lockAcquireSleepInterval="13000"/>
</amq:locker>
</amq:jdbcPersistenceAdapter>
</amq:persistenceAdapter>
<amq:transportConnectors>
<amq:transportConnector name="default" uri="tcp://localhost:8093"/>
</amq:transportConnectors>
</amq:broker>
2, start another program, ex. tomcat to listen at port 8093
3, BrokerService brokerService = BrokerFactory.createBroker("xbean:ActiveMQ.xml");
brokerService.start();
4, Check table activemq_lock
you can see activemq_lock.broker_name is "testBroker"
and activemq_lock.time is updated every 5 seconds
But brokerService.isStarted() is false.