Uploaded image for project: 'Qpid Dispatch'
  1. Qpid Dispatch
  2. DISPATCH-818

Honor failoverList provided by connected brokers

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 0.8.0
    • 1.0.0
    • Container
    • None

    Description

      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 -

      [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"}]}]
      

      notice that the broker sends a failover-server-list of

      "failover-server-list"=[{:"network-host"="second-host", :port="25000"}, {:"network-host"="third-host", :port="5671", :scheme="amqps"}]
      

      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).

      Attachments

        Issue Links

          Activity

            People

              gmurthy Ganesh Murthy
              gmurthy Ganesh Murthy
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: