Details
-
Bug
-
Resolution: Done
-
Major
-
JBoss A-MQ 6.0
-
None
Description
Deploying a master/slave broker pair that uses JDBC persistence via Fabric. Both broker instances use the same broker name and group name and this JDBC config:
<ioExceptionHandler> <jDBCIOExceptionHandler stopStartConnectors="false"/> </ioExceptionHandler> <persistenceAdapter> <jdbcPersistenceAdapter dataSource="#mysql-ds" lockKeepAlivePeriod="1000"> <locker> <lease-database-locker lockAcquireSleepInterval="2000"/> </locker> </jdbcPersistenceAdapter> </persistenceAdapter>
If the underlying database is shut down, the master broker shuts down. However it does not un-register from Zookeeper. As a result no instance will become the master when the database has been brought up again. The previous master broker has shut down and will not be attempted to be restarted. The slave broker still waits to lock the Zookeeper node (based on the broker name) which remains in use by the master broker (that has shut down).
The only workaround is to manually stop the master broker container or at least stop the mq-fabric bundle on the master broker container.