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

ASF GitHub Bot commented on ARTEMIS-1803:
-----------------------------------------

Github user cshannon commented on the issue:

    https://github.com/apache/activemq-artemis/pull/2012
  
    @franz1981 and @michaelandrepearce  - I updated the patch to pass a 
reference to the ServerConsumer (when it applies) for both the expired and 
acked callbacks and dropped the extra reference to the serverId in the 
MessageReference class....let me know what you think


> Pass ServerConsumer to messageExpired and messageAcknowledged plugin callbacks
> ------------------------------------------------------------------------------
>
>                 Key: ARTEMIS-1803
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-1803
>             Project: ActiveMQ Artemis
>          Issue Type: Improvement
>    Affects Versions: 2.5.0
>            Reporter: Christopher L. Shannon
>            Assignee: Christopher L. Shannon
>            Priority: Minor
>
> Right now a MessageReference will track a consumerId (in certain scenarios) 
> but the sessionId is not included.  This is a problem because consumerIds are 
> not unique and are duplicated across sessions.  In order to find a unique 
> consumer you need the sessionId and consumerId as well.   This is a problem 
> for plugins implementing messageExpired and messageAcknowledged as they can't 
> get the exact consumer based on just the consumerId.
> To solve this the ServerConsumer object responsible for acknowledging the 
> message or expiring the message should be passed to those callback methods.  
> If consumer doesn't apply (such as when the broker expires internally or 
> internally moves messages and acks) then the consumer object will be null.



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

Reply via email to