Description of problem: There is a subscriber on amq.direct. Another client creates an exchange with amq.direct as alternate exchange and sends a message towards it. Since there is no binding/subscription on the defined exchange yet the message shall be routed to the alternate exchange. Note: Using 0-10 publisher the message is delivered to the consumer on amq.direct Please see additional info for more details. Version-Release number of selected component (if applicable): qpid-cpp-*-0.22-14 How reproducible: 100% Steps to Reproduce: 1. ./drain -f --connection-options "{ protocol : 'amqp1.0' }" amq.direct 2. ./spout --connection-options "{protocol:'amqp1.0'}" "ex;{create:always,node:{type:topic,x-declare:{alternate-exchange:amq.direct}}}" 3. the message was not delivered to the consumer on amq.direct Actual results: Message is not delivered to alternate exchange Expected results: Message is delivered to alternate exchange Additional info: Following cases works well: 1. using amqp1.0: Declaring the exchange using one client: ./drain --connection-options "{protocol:'amqp1.0'}" "ex;{create:always,node:{type:topic, x-declare:{alternate-exchange:amq.direct}}}" Sending the message using another client (using other connection): ./spout ex 2. Defining the exchange and sending the message using 0-10 client: ./spout "ex;{create:always,node:{type:topic,x-declare:{alternate-exchange:amq.direct}}}"
Fixed upstream: https://svn.apache.org/r1525090
This issue has been fixed. Verified on rhel6.5 (x86_64, i386). packages under test: qpid-cpp-*-0.22-33 -> VERIFIED