[
https://issues.apache.org/jira/browse/ARTEMIS-2380?focusedWorklogId=304073&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-304073
]
ASF GitHub Bot logged work on ARTEMIS-2380:
-------------------------------------------
Author: ASF GitHub Bot
Created on: 30/Aug/19 07:01
Start Date: 30/Aug/19 07:01
Worklog Time Spent: 10m
Work Description: wy96f commented on issue #2703: ARTEMIS-2380 Fix
delivering message in the case of consume close
URL: https://github.com/apache/activemq-artemis/pull/2703#issuecomment-526484577
> The more i look at this i think you should track these in the session. Not
consumer, else we are not letting go of the closed consumer. Once consumer is
closed it should be able to gc'd should be treated as no longer existing. How
to link it would be by tracking uncommitted messages in session and tracking
the session in the queue, this way also if multiple consumers in a session are
closed then only tracking one thing. And is more closely mapping the actual
behaviour
Thanks, will try.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
Issue Time Tracking
-------------------
Worklog Id: (was: 304073)
Time Spent: 6h (was: 5h 50m)
> Fix delivering message in the case of consume close
> ---------------------------------------------------
>
> Key: ARTEMIS-2380
> URL: https://issues.apache.org/jira/browse/ARTEMIS-2380
> Project: ActiveMQ Artemis
> Issue Type: Bug
> Components: Broker
> Reporter: yangwei
> Priority: Major
> Time Spent: 6h
> Remaining Estimate: 0h
>
> When consumer is closed and transaction is not committed or rollbacked, the
> msg acked is not showed by delivering message but counted by delivering count.
> We add closed consumer if any message is acked but not committed or
> rollbacked, and remove closed consumer if transaction is finished. In this
> way, delivering messages can be properly retained.
> During calling hasCosnumer and getConsumerId, there is some race condition
> that emptyConsumerId is called causing following getConsumerId throws
> IllegalStateException. Also optimize it without extra effort.
--
This message was sent by Atlassian Jira
(v8.3.2#803003)