Subscription with exclusive:true and auto-delete:true should not redeliver 
messages
-----------------------------------------------------------------------------------

                 Key: APLO-86
                 URL: https://issues.apache.org/jira/browse/APLO-86
             Project: ActiveMQ Apollo
          Issue Type: Bug
            Reporter: Lionel Cons


The exclusive and auto-delete subscription options can be combined to create a 
private reply queue.

The current Apollo snapshot does not seem to always delete unconsumed messages, 
allowing a rogue client to consume them.

My test scenario:
 - c1 subscribes to /queue/foo with exclusive:true and auto-delete:true and 
ack:client
 - c1 sends messages with the appropriate reply-to header, expecting replies to 
go to /queue/foo
 - (rogue) c2 subscribes to /queue/foo with the intent to steal messages, it 
does not get any because of exclusive:true
 - c1 receives and acks messages and then decides to quit
 - there are not yet delivered or not yet acked messages in the queue
 - c1 unsubscribes and disconnects
 - the broker delivers the pending messages to c2 before/while deleting the 
queue

IMHO, the broker should not deliver messages to c2 in this situation.

The best solution is probably to forbid subscribing to a queue that has a 
subscription with both exclusive:true and auto-delete:true.

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

        

Reply via email to