Christian Danner created ARTEMIS-3128:
-----------------------------------------

             Summary: Queue browser may cause OutOfMemoryError on server side
                 Key: ARTEMIS-3128
                 URL: https://issues.apache.org/jira/browse/ARTEMIS-3128
             Project: ActiveMQ Artemis
          Issue Type: Improvement
          Components: JMX, Web Console
    Affects Versions: 2.15.0
         Environment: Embedded Apache Artemis 2.15.0

Windows Server 2016 Standard (10.0.14393)

Java(TM) SE Runtime Environment (build 1.8.0_152-b16)
Java HotSpot(TM) 64-Bit Server VM (build 25.152-b16, mixed mode)
            Reporter: Christian Danner


It seems the browse message view in the web console is implemented in a way 
that the server loads all messages to display per page into memory.

This may lead to an OutOfMemoryError on server side in case many large messages 
are enqueued.

We use Apache Artemis to transmit large binary messages using AMQP (message 
sizes of up to 60MB). Producing and consuming messages works just fine as we 
disable prefetch for consumers, however browsing messages is basically not 
possible in such a scenario.

Since the queue browser displays basic message properties only it should not be 
necessary to actually load messages from the journal into memory just to 
display those message properties.

Only in case the user wants to view message details the client should issue a 
call to the server to get the actual message payload, preferably with a 
(configurable) size cap to avoid transmission of large amounts of unnecessary 
data (viewing binary payloads is of limited use anyways, however a cap also 
makes sense for text messages)



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to