[
https://issues.apache.org/jira/browse/ARTEMIS-580?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
clebert suconic updated ARTEMIS-580:
------------------------------------
Fix Version/s: (was: 1.4.0)
1.5.0
> Add setting to control global memory usage
> ------------------------------------------
>
> Key: ARTEMIS-580
> URL: https://issues.apache.org/jira/browse/ARTEMIS-580
> Project: ActiveMQ Artemis
> Issue Type: Improvement
> Affects Versions: 1.3.0
> Reporter: Lionel Cons
> Assignee: clebert suconic
> Priority: Blocker
> Fix For: 1.5.0
>
>
> AFAIK, the only way to prevent Artemis from consuming all the heap and dying
> with OOM errors is to set {{max-size-bytes}}.
> This per-address setting is not suitable for brokers with many addresses that
> have different usage patterns. For instance, on a broker used for testing,
> Artemis complained that:
> {code}
> 2016-06-20 13:20:03,107 [org.apache.activemq.artemis.core.server] WARN
> AMQ222205: OutOfMemoryError possible! There are currently 400 addresses with
> a total max-size-bytes of 4,194,304,000 bytes, but the maximum memory
> available is 764,411,904 bytes.
> {code}
> These 400 addresses are not used anymore and will eventually be removed.
> In contrast, ActiveMQ 5.x has a much more useful global setting to control
> how much memory (in total) the broker will use. See {{memoryUsage}} in
> http://activemq.apache.org/producer-flow-control.html.
> Could Artemis also use a global memory setting to limit its memory usage?
> What to do when hitting this limit (DROP, BLOCK, PAGE...) could stay
> per-address.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)