Ganesh Murthy created DISPATCH-818:
--------------------------------------
Summary: Honor failoverList provided by connected brokers
Key: DISPATCH-818
URL: https://issues.apache.org/jira/browse/DISPATCH-818
Project: Qpid Dispatch
Issue Type: Bug
Components: Container
Affects Versions: 0.8.0
Reporter: Ganesh Murthy
Assignee: Ganesh Murthy
Fix For: 1.0.0
When a router makes a connection to a broker (using a configured connector),
the broker may provide alternate connection information for use in a failure
scenario. The router must honor this alternate connection data when the primary
connection is lost.
For example, if the router opens a connection to the broker and the broker
responds with an open frame like the following -
{noformat}
[0x7fc8b000a3e0]:0 <- @open(16) [container-id="Router.A", max-frame-size=16384,
channel-max=32767, idle-time-out=8000, offered-capabilities=:"ANONYMOUS-RELAY",
properties={:product="qpid-dispatch-router", :version="1.0.0",
:"failover-server-list"=[{:"network-host"="second-host", :port="25000"},
{:"network-host"="third-host", :port="5671", :scheme="amqps"}]}]
{noformat}
notice that the broker sends a failover-server-list of
{noformat}
"failover-server-list"=[{:"network-host"="second-host", :port="25000"},
{:"network-host"="third-host", :port="5671", :scheme="amqps"}]
{noformat}
The router should store this alternate connection information and retry these
hosts when the original connection goes down.
The following should be the order of operations
- The original connection goes down, try connecting with the original
connection information one more time. If that failed, try connecting with the
alternate connection information. If the original and the alternate failed,
keep going round robin between alternate and original until you get a
successful hit.
- If there is no alternate connection information, keep on trying to connect
using the original connection information (which is what is currently
happening).
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]