[ 
https://issues.apache.org/jira/browse/ARTEMIS-1755?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16406838#comment-16406838
 ] 

Rini Bollarapu commented on ARTEMIS-1755:
-----------------------------------------

{quote}I'm a bit confused. In the issue description you said, "A message 
containing a person's information is sent to a queue and consumed. After 
sometime, the person's address is updated and the update message is sent to 
queue." If the person's address is updated does that not mean that the contents 
of the message you're sending is different than the previous message (i.e. the 
new message contains a different, updated address)? Perhaps that's not the way 
your application is designed, but it's not clear from your description. Please 
clarify.
{quote}
Sorry for the confusion. By updated message, I meant some other metadata 
associated with the same ID being updated and that metadata is not present in 
the message. That's why I'm using same __AMQ__DUPL_ID on both messages.
{quote}What should happen if the first message *wasn't* already consumed. 
Should the new "update" message be considered a duplicate in that case and 
ignored?

In what case should duplicate detection actually ignore messages in your 
application? It seems like sometimes you want it to detect duplicates and 
sometimes you don't, but the specifics of each case is not clear.
{quote}
 

Yes, it's a duplicate in some cases and some cases it's not. Here are the 
different cases:

1. If I'm trying to send a message with __AMQ__DUPL_ID='1234' and that's not in 
the queue, it's not a duplicate and hence makes it's way into the queues. (this 
works fine!)
2. if a message with __AMQ__DUPL_ID='1234' is in the queue and I'm trying to 
send another message with __AMQ__DUPL_ID='1234', it's a duplicate and doesn't 
enter the queue. (this works fine too!)

3. If I send a message with __AMQ__DUPL_ID='1234', it's not a duplicate and 
enters the queue. This message is consumed and after some time I get a message 
with __AMQ__DUPL_ID='1234' again, I expect it to enter the queue because the 
queue doesn't have the first message anymore. This became a duplicate not 
because it's in the queue, but just because it's in the duplicate detection 
cache. (this case is not working)

> Delete message from duplicate cache on message consume
> ------------------------------------------------------
>
>                 Key: ARTEMIS-1755
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-1755
>             Project: ActiveMQ Artemis
>          Issue Type: Improvement
>          Components: Broker
>    Affects Versions: 2.4.0
>            Reporter: Rini Bollarapu
>            Priority: Minor
>              Labels: newbie
>
> Hi, duplicate cache still contains the message even if the message was 
> consumed from the queue or deleted from the queue. From the documentation, it 
> looks like there's no configuration to handle something like this. 
> Example:
> A message containing a person's information is sent to a queue and consumed. 
> After sometime, the person's address is updated and the update message is 
> sent to queue. This updated message is ignored as a duplicate because the 
> original message was not removed from the duplicate cache when it was 
> consumed.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to