activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Paul Gale <>
Subject Re: Re:Re: ActiveMQ Master/slave with MySQLCluster backend
Date Thu, 28 Mar 2013 16:48:28 GMT
Hi Ali,

Are you using the JDBCIOExceptionHandler with your broker? That _should_

By default a broker is assigned the DefaultIOExceptionHandler to handle
exceptions. You should probably change it out to use the
JDBCIOExceptionHandler instead as mentioned here:

The page doesn't mention the JDBCIOExceptionHandler explicitly (which it
should), however, it has the same configuration options as the default
handler but different defaults. It defaults 'ignoreSQLExceptions' to false
and 'stopStartConnectors' to true. The JDBCIOExceptionHandler understands
how to deal with pluggable lockers (if present) to determine lock ownership.

One would have thought that the documentation would emphasize this more.
Alternatively it could switch out the default exception handler to be
JDBCIOExceptionHandler when it detects that a jdbcPersistenceAdapter is
being used.


On Thu, Mar 28, 2013 at 11:08 AM, schweet <> wrote:
> Hi;
> Yes, I am having to use the lease DB feature. No other way round it.
>         <persistenceAdapter>
>                 <jdbcPersistenceAdapter dataDirectory="${}"
> dataSource="#mysql-ds" lockKeepAlivePeriod="5000">
>                 <locker>
>                        <lease-database-locker
> lockAcquireSleepInterval="8000"/>
>                 </locker>
>         </jdbcPersistenceAdapter>
>         </persistenceAdapter>
> I have found other problems with the version of activemq that I'm running.
> 5.7 has issues with Failover. For example, if you have multi master mesh
> MYSQL setup, master activemq connects to 1 DB, grabs a lock, the other mq
> nodes try to get a lease, they cant, they keep trying and trying with
> time as above. All good so far...Then I tried taking down 1 db host, MQ
> master switches nicely to the 2nd DB host, I taken take down the 2nd DB
> expecting it to connect to the 3rd DB, it doesnt. Throws an exception and
> leaves the JMS 61616 running, another MQ node then grabs the lease off one
> of the DB's and starts 61616 thinking that its now master. Problem here
> I have a Network LB which is being consumed by client that use the jms
> as some clients cannot utilise the failover string, this vip obviously has
> to use something for keepalive - it uses 61616 to route traffic to the
> active MQ node. When the former master MQ node fails to cleanly close
> 61616/or become a slave after an exception (db failure), the vip is
> traffic to the dead MQ as 61616 is still active!
> Good god! Its a nightmare. Can someone help? Has 5.8 resolved this issue?
> hope? Please someone advise.
> thanks
> Ali.
> --
> View this message in context:
> Sent from the ActiveMQ - User mailing list archive at

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message