activemq-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (ARTEMIS-1803) Pass ServerConsumer to messageExpired and messageAcknowledged plugin callbacks
Date Thu, 12 Apr 2018 16:49:00 GMT

    [ 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)

Mime
View raw message