1. Qpid
  2. QPID-2365

Reroute messages on a queue - remove messages from a queue and send them to an exchange


    • Type: New Feature New Feature
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: 0.7
    • Fix Version/s: 0.7
    • Component/s: C++ Broker
    • Labels:


      The Queue.Purge method simply discards messages (as it should) without sending them to an alternate exchange, even if one is configured for the queue.

      There are cases where it is desirable to take messages from a queue and re-route them through an exchange. In this case, a new method (Queue.Reroute) should be added. The proposed spec for this method follows:

      <method name="reroute" desc="Remove all or some messages on this queue and route them to an exchange">
      <arg name="request" dir="I" type="uint32" desc="0 for all messages or n>0 for n messages"/>
      <arg name="useAltExchange" dir="I" type="bool" desc="Iff true, use the queue's configured alternate exchange;
      iff false, use exchange named in the 'exchange' argument"/>
      <arg name="exchange" dir="I" type="sstr" desc="Name of the exchange to route the messages through"/>

      This method allows for messages to be sent to the alternate exchange (if configured) or to an exchange specified by the caller.


        Transition Time In Source Status Execution Times Last Executer Last Execution Date
        Open Open Resolved Resolved
        2d 23h 44m 1 Ted Ross 29/Jan/10 22:58
        Resolved Resolved Closed Closed
        1276d 20h 7m 1 Justin Ross 29/Jul/13 19:06
        Justin Ross made changes -
        Status Resolved [ 5 ] Closed [ 6 ]
        Ted Ross made changes -
        Field Original Value New Value
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Ted Ross created issue -


          • Assignee:
            Ted Ross
            Ted Ross
          • Votes:
            0 Vote for this issue
            0 Start watching this issue


            • Created: