[
https://issues.apache.org/jira/browse/AMQ-9107?focusedWorklogId=816622&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-816622
]
ASF GitHub Bot logged work on AMQ-9107:
---------------------------------------
Author: ASF GitHub Bot
Created on: 13/Oct/22 14:12
Start Date: 13/Oct/22 14:12
Worklog Time Spent: 10m
Work Description: jbonofre commented on code in PR #908:
URL: https://github.com/apache/activemq/pull/908#discussion_r994700232
##########
activemq-broker/src/main/java/org/apache/activemq/broker/jmx/ManagedRegionBroker.java:
##########
@@ -215,6 +217,7 @@ public ObjectName registerSubscription(ConnectionContext
context, Subscription s
registerSubscription(objectName, sub.getConsumerInfo(), key,
view);
}
subscriptionMap.put(sub, objectName);
+ consumerSubscriptionMap.put(sub.getConsumerInfo(), sub);
Review Comment:
Good catch, that's possible. At least we should test if `sub` is not null.
Issue Time Tracking
-------------------
Worklog Id: (was: 816622)
Time Spent: 50m (was: 40m)
> Closing many consumers causes CPU to spike to 100%
> --------------------------------------------------
>
> Key: AMQ-9107
> URL: https://issues.apache.org/jira/browse/AMQ-9107
> Project: ActiveMQ
> Issue Type: Bug
> Affects Versions: 5.17.1, 5.16.5
> Reporter: Lucas Tétreault
> Assignee: Jean-Baptiste Onofré
> Priority: Major
> Fix For: 5.18.0, 5.16.6, 5.17.3
>
> Attachments: example.zip, image-2022-10-07-00-12-39-657.png,
> image-2022-10-07-00-17-30-657.png
>
> Time Spent: 50m
> Remaining Estimate: 0h
>
> When there are many consumers (~188k) on a queue, closing them is incredibly
> expensive and causes the CPU to spike to 100% while the consumers are closed.
> Tested on an Amazon MQ mq.m5.large instance (2 vcpu, 8gb memory).
> I have attached a minimal recreation of the issue where the following
> happens:
> 1/ Open 100 connections.
> 2/ Create consumers as fast as we can on all of those connections until we
> hit at least 188k consumers.
> 3/ Sleep for 5 minutes so we can observe the CPU come back down after opening
> all those connections.
> 4/ Start closing consumers as fast as we can.
> 5/ After all consumers are closed, sleep for 5 minutes to observe the CPU
> come back down after closing all the connections.
>
> In this example it seems 5 minutes wasn't actually sufficient time for the
> CPU to come back down and the consumer and connection counts seem to hit 0 at
> the same time:
> !image-2022-10-07-00-12-39-657.png|width=757,height=353!
>
> In a previous test with more time sleeping after closing all the consumers we
> can see the CPU come back down before we close the connections.
> !image-2022-10-07-00-17-30-657.png|width=764,height=348!
--
This message was sent by Atlassian Jira
(v8.20.10#820010)