activemq-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jeff Mesnil (JIRA)" <>
Subject [jira] [Commented] (ARTEMIS-201) Log warning if server can crash on OutOfMemory due to "misconfiguration"
Date Tue, 06 Dec 2016 15:39:58 GMT


Jeff Mesnil commented on ARTEMIS-201:

I was quite surprised when I saw this warning in our logs: 

16:13:46,785 WARN  [org.apache.activemq.artemis.core.server] (ServerService Thread Pool --
64) AMQ222205: OutOfMemoryError possible! There are currently 49 addresses with a total max-size-bytes
of 513.802.240 bytes, but the maximum memory available is 477.626.368 bytes.

It sounds scarier that is should be. We should inform the user that memory could be exhausted
if messages are not consumed (or not consumed faster than they are produced).
Lowering the messages to INFO might be better too... It sounds more a theoretical problem
than an actual issue hitting the server.
And maybe, we could used some units for the bytes with all the space we have on our computers
(513MiB or whatever is easier to understand than 513.802.240 bytes :)

> Log warning if server can crash on OutOfMemory due to "misconfiguration"
> ------------------------------------------------------------------------
>                 Key: ARTEMIS-201
>                 URL:
>             Project: ActiveMQ Artemis
>          Issue Type: New Feature
>          Components: Broker
>    Affects Versions: 1.0.0
>            Reporter: Miroslav Novak
>            Assignee: Justin Bertram
>             Fix For: 1.2.0
> Imagine situation where server is started with 3000 destinations and max-size-bytes is
set to 10MB. This would mean that JVM would have to be started with at least 30GB of memory
to prevent OOM in case that all destinations get filled up. (PAGE mode is not a solution in
this case as it starts once destination exceeds 10MB in memory)
> Purpose of this jira is to provide check which would print warning in case that such
OOM can happen. This check would be executed during start of server and then with adding any
destination at runtime.

This message was sent by Atlassian JIRA

View raw message