Qpid
  1. Qpid
  2. QPID-3773

Creating exchange source routes to different brokers can fail if the channels overlap.

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 0.14
    • Fix Version/s: 0.15
    • Component/s: C++ Broker
    • Labels:
      None

      Description

      The following valid configuration results in a failure to create a second bridge queue:

      ./qpidd --auth no --no-data-dir -p 7777 &
      ./qpidd --auth no --no-data-dir -p 8888 &
      ./qpidd --auth no --no-data-dir -p 9999 &

      [kgiusti@localhost src (trunk)]$ qpid-config -a127.0.0.1:7777 add exchange topic ex1
      [kgiusti@localhost src (trunk)]$ qpid-config -a127.0.0.1:8888 add exchange topic ex1
      [kgiusti@localhost src (trunk)]$ qpid-config -a127.0.0.1:9999 add exchange topic ex1
      [kgiusti@localhost src (trunk)]$ qpid-route -s route add 127.0.0.1:7777 127.0.0.1:8888 ex1 "#"
      [kgiusti@localhost src (trunk)]$ qpid-route -s route add 127.0.0.1:9999 127.0.0.1:8888 ex1 "#"

      This should result in two bridge queues being created on 127.0.0.1:8888; one queue for the route to :7777, the other for the route to :9999.

      What actually happens is one queue is created:

      [kgiusti@localhost src (trunk)]$ qpid-stat -q 127.0.0.1:8888
      Queues
      queue dur autoDel excl msg msgIn msgOut bytes bytesIn bytesOut cons bind
      ====================================================================================================================================
      ...
      bridge_queue_1_c1de955c-3632-4a7d-b6d8-be9890ff38b3 Y Y 0 0 0 0 0 0 1 2
      ...

      This is due to the way the broker generates the name for the queue. The format of the name is "bridge_queue_" + channel# + broker's federation uuid. In the failure case, the channel # happens to be the same for both routes, which results in duplicate names for different queues.

        Activity

          People

          • Assignee:
            Ken Giusti
            Reporter:
            Ken Giusti
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development