Hey folks,

i am still struggling with the auto-failover feature of brokers in a broker
network.

Consider that i have two brokers, each of them connected to the other like
this over SSL:

    <networkConnectors>
      <networkConnector name="remote_ssl"
uri="static://(ssl://my-bloody-valentine:61617)" />
    </networkConnectors>

Works like a charm.

Now consider that i have one Broker - called A - connected to a Cluster of 2
other brokers, called B and C.

So the networkconnector for Broker A looks like:


    <networkConnectors>
      <networkConnector name="remote_ssl"
uri="static://(ssl://broker-B:61617, ssl://broker-C:61617)" />
    </networkConnectors>

And the networkConnectors of B and C simply point to A like this:

    <networkConnectors>
      <networkConnector name="remote_ssl"
uri="static://(ssl://broker-A:61617)" />
    </networkConnectors>

So far, so good.

Now i start broker-A and broker-B / broker-C from the cluster.

This works fine, meaning i can stop broker-B, then broker-C becomes the
master, messages are correctly transmitted and so on.

But broker-A always gives me annoying errors like this:

                INFO  DiscoveryNetworkConnector      - Establishing network 
connection
between from vm://localhost to ssl://broker-C:61627
                WARN  DiscoveryNetworkConnector      - Could not start network 
bridge
between: vm://localhost and: ssl://broker-C:61627 due to:
java.net.ConnectException: Connection refused
                INFO  DemandForwardingBridge         - localhost bridge to 
Unknown stopped
                ERROR TransportConnector             - Could not accept 
connection :
org.apache.activemq.transport.TransportDisposedIOException: Peer
(vm://localhost#68) disposed.
                org.apache.activemq.transport.TransportDisposedIOException: Peer
(vm://localhost#68) disposed.
                        at
org.apache.activemq.transport.vm.VMTransport.oneway(VMTransport.java:87)
                        at
org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:40)
                        at
org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:59)
                        at
org.apache.activemq.broker.TransportConnection.dispatch(TransportConnection.java:1178)
                        at
org.apache.activemq.broker.TransportConnection.processDispatch(TransportConnection.java:797)
                        at
org.apache.activemq.broker.TransportConnection.start(TransportConnection.java:878)
                        at
org.apache.activemq.broker.TransportConnector$1$1.run(TransportConnector.java:152)
                INFO  DiscoveryNetworkConnector      - Establishing network 
connection
between

Well, of course can the connection from broker-A to broker-C not be
established, because broker-C works initially as slave and is thus not
reachable.

BUT: If activemq-brokers do an autofailover, why don't they realize  by
themselves that some hosts in their list are not reachable and stop spamming
my console with the same error message?

How can i get rid of this error message (by configuration, not by
ignorance...:-)?

So far as i can tell, the system works flawless despite the error message.

P.S.:

A uri-prefix like "failover" does not work with brokers.
-- 
View this message in context: 
http://www.nabble.com/Broker-autofailover%3A-Why-don%27t-brokers-check-that-a-host-is-down-by-themselves--tf4654450s2354.html#a13298393
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Reply via email to