activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gary Tully (Resolved) (JIRA)" <j...@apache.org>
Subject [jira] [Resolved] (AMQ-3542) Using failover: with static discovery in a network connector to choose from a master/slave tuple leads to hangs and invalid states
Date Thu, 13 Oct 2011 20:23:11 GMT

     [ https://issues.apache.org/jira/browse/AMQ-3542?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Gary Tully resolved AMQ-3542.
-----------------------------

    Resolution: Fixed

fix and test in: http://svn.apache.org/viewvc?rev=1183062&view=rev

{{static:(failover:(a,b)?maxReconnectAttempts=0)}} now works reliably to choose a working
url from (a,b) and report failures without trying to reconnect/failover. The network connector
then gets to recover using its stop/restart logic.
This is a usage pattern for {{failover:}} where it is used solely to pick a valid broker url.
It does *not* try to recover a failed connection. Network connectors need to manage failed
connections themselves b/c they are not simple jms client connections.

Note: this commit changes the default value of maxReconnectAttempts for the failover: transport.
A value of 0 now disables reconnections, the default for infinite retries is now -1.
                
> Using failover: with static discovery in a network connector to choose from a master/slave
tuple leads to hangs and invalid states
> ----------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: AMQ-3542
>                 URL: https://issues.apache.org/jira/browse/AMQ-3542
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Connector, Transport
>    Affects Versions: 5.4.2, 5.5.0
>            Reporter: Gary Tully
>            Assignee: Gary Tully
>              Labels: failover, master, network, slave
>             Fix For: 5.6.0
>
>
> static discovery will try to connect to all provided urls. When the list is a master/slave
pair with shared storage, only one will active, leading log messages indicating repeated failure
to connect.
> A potential solution is to use failover: just to pick a url but let it delegate failover
to the network connector such that the network bridge is correctly stopped/restarted.
>   {{static:(failover:(tcp://a:61616,tcp://slave:61616)?maxReconnectAttempts=..)}}
> This does not work reliably atm, due to inconsistency in the failover reconnect logic,
a network connectors interest in transport interruption/resumption and the lack of thread
safety in tracking existing bridges.
>  

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message