Details
Description
- deployed ActiveMQ 5.3.0 as RAR on JBoss
- broker comes up fine
- at some point database goes offline
- broker can't communicate with database and shuts down
- now database comes back online
- borker will never come back again and will have to restart the JBoss manually again to start the broker
This will be a blocker for us to go to production as there is no availability of broker when database goes offline and comes back.
Here is my broker-config.xml, let me know if any configuration is missing :
<beans xmlns="http://activemq.apache.org/schema/core">
<bean xmlns="" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>
<bean xmlns="" id="my-ds" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver"/>
<property name="url" value="jdbc:sqlserver://mydb:1433;databaseName=myds"/>
<property name="username" value="sql"/>
<property name="password" value="sql"/>
<property name="initialSize" value="10"/>
<property name="poolPreparedStatements" value="true"/>
</bean>
<!-- shutdown hook is disabled as RAR classloader may be gone at shutdown -->
<broker useJmx="true" brokerName="sample.broker1" useShutdownHook="false">
<destinations>
<topic physicalName="pocket" />
</destinations>
<managementContext>
<!-- use appserver provided context instead of creating one,
for jboss use: -Djboss.platform.mbeanserver -->
<managementContext createConnector="false"/>
</managementContext>
<persistenceAdapter>
<!-- <amqPersistenceAdapter syncOnWrite="false" directory="${jboss.server.data.dir}/activemq" maxFileLength="20 mb"/> -->
<!-- <journaledJDBC journalLogFiles="5" dataDirectory="${jboss.server.data.dir}/activemq"/> -->
<!-- To use a different datasource, use th following syntax : -->
<!-- <kahaPersistenceAdapter directory="${jboss.server.data.dir}/activemq" maxDataFileLength="33554432"/> -->
<journaledJDBC journalLogFiles="5" dataDirectory="${jboss.server.data.dir}/activemq" dataSource="#my-ds" useDatabaseLock="false" />
</persistenceAdapter>
<transportConnectors>
<transportConnector name="sample.broker1" uri="tcp://localhost:3030" discoveryUri="multicast://default"/>
</transportConnectors>
</broker>
</beans>
Attachments
Issue Links
- duplicates
-
AMQ-1780 ActiveMQ broker does not automatically reconnect if the connection to the database is lost
- Resolved