1. Qpid
  2. QPID-4378

C++ Broker deletes dynamic bridges too aggressively


    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 0.18
    • Fix Version/s: 0.19
    • Component/s: C++ Broker
    • Labels:
    • Environment:

      C++ Broker


      If a dynamic bridge's session has been detached while attempting to propagate a binding event, the broker will delete the bridge. Normally, a detached bridge session will be automatically recovered during the maintenance periodic if possible. Needless to say, auto-deleting the bridge upon a session error prevents this normal recovery path from occurring.

      This event can occur in a production system during broker startup/federation and also during source broker recovery since there is a potential race condition between creation of the source exchange and the creation of the dynamic bridge on the destination broker.

      Log Message:
      Sep 30 19:41:40 localhost qpidd[10497]: 2012-09-30 19:41:40 [Broker] error Cannot propagate binding for dynamic bridge as session has been detached, deleting dynamic bridge

      Steps to reproduce:

      1. src broker: localhost:5801
      2. dst broker: localhost:5803
      3. Create exchange in dst broker
        qpid-config -b localhost:5803 add exchange topic fed.topic


      1. create dynamic bridge
        qpid-route dynamic add localhost:5803 localhost:5801 fed.topic


      1. create dst queue as bind target
        qpid-config -b localhost:5803 add queue fed.topic.queue


      1. create binding on dest exchange
        qpid-config -b localhost:5803 bind fed.topic fed.topic.queue
        qpid-config -b localhost:5803 unbind fed.topic fed.topic.queue
      1. The unbind should not delete the bridge.


        Chuck Rolke created issue -
        Chuck Rolke added a comment -

        Fix with r1399837.
        Reviewed by Ted Ross.

        Chuck Rolke added a comment - Fix with r1399837. Reviewed by Ted Ross.
        Chuck Rolke made changes -
        Field Original Value New Value
        Status Open [ 1 ] Resolved [ 5 ]
        Fix Version/s 0.19 [ 12322452 ]
        Resolution Fixed [ 1 ]
        Justin Ross made changes -
        Status Resolved [ 5 ] Closed [ 6 ]
        Transition Time In Source Status Execution Times Last Executer Last Execution Date
        Open Open Resolved Resolved
        35m 45s 1 Chuck Rolke 18/Oct/12 20:40
        Resolved Resolved Closed Closed
        283d 22h 12m 1 Justin Ross 29/Jul/13 18:53


          • Assignee:
            Chuck Rolke
            Chuck Rolke
          • Votes:
            0 Vote for this issue
            1 Start watching this issue


            • Created: