[
https://issues.apache.org/jira/browse/AMQ-7284?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Wesley updated AMQ-7284:
------------------------
Affects Version/s: 5.15.9
> Newly restarted consumer becomes exclusive consumer of ActiveMQ messages for
> new message groups
> -----------------------------------------------------------------------------------------------
>
> Key: AMQ-7284
> URL: https://issues.apache.org/jira/browse/AMQ-7284
> Project: ActiveMQ
> Issue Type: Bug
> Affects Versions: 5.15.9
> Reporter: Wesley
> Priority: Major
>
> Suppose there are 2 single threaded consumers A and B (2 separate processes)
> listening to messages on a queue. All messages sent to this group have a
> group ID (JMSXGroupID).
> ActiveMQ has selected A as the consumer for message groups G1, G2, G3, ...
> G500. Now, if A goes down and end-group messages ("JMSXGroupSeq" = -1) arrive
> for these groups, then consumer B consumes them and these groups get
> permanently attached to consumer B even though the groups have ended.
> I checked this using ./activemq (formerly activemq-admin) query
> -QQueue=*test.queue* --view MessageGroups
> Now there is no way these message groups will get purged unless a new
> end-group message arrives with the same group ID or 'removeAllMessageGroups'
> is invoked through JMX.
> Now if A comes back up again and normal behavior continues, A will get all of
> the new groups unless there are at least 500 active groups within A that are
> not yet terminated. It's only after A has at least 500 active groups that B
> will get a chance to be assigned message groups, but the lower bound for B
> remains 500.
--
This message was sent by Atlassian Jira
(v8.3.2#803003)