Tagged federation messages in a transaction can cause subsequent dequeue to fail
--------------------------------------------------------------------------------

                 Key: QPID-3304
                 URL: https://issues.apache.org/jira/browse/QPID-3304
             Project: Qpid
          Issue Type: Bug
          Components: C++ Broker
    Affects Versions: 0.10
            Reporter: Gordon Sim
             Fix For: 0.11


E.g. with Error dequeuing message, persistence id not set 
(MessageStoreImpl.cpp:1355) (exact error depends on store used).

To reproduce, bind a durable queue to an exchange with a given binding key the 
set up a route between that same exchange on two brokers with the 'source 
broker' being the one with the durable queue bound to it. Then bind a queue on 
the 'destination' broker with the same binding key as used for the durable 
queue. Then publish a transactional message to the source brokers exchange with 
a matching routing key. The message will be enqueued on both the durable queue 
and the federation routes temporary bridge queue. However the persistence id 
for the message, set when enqueueing on the durable queue is lost and 
subsequent attempts to dequeue to fail.

The problem is that the copy-on-write strategy used to workaround QPID-2670 
means that the message on which the persistent store id is set is not then 
pushed onto the appropriate queues, the copy is (and the copy may not have the 
persistence id set on it). 

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:[email protected]

Reply via email to