You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Clebert Suconic (Jira)" <ji...@apache.org> on 2022/08/17 20:52:00 UTC

[jira] [Commented] (ARTEMIS-3943) Clients can cause broker OOM when reading paged messages

    [ https://issues.apache.org/jira/browse/ARTEMIS-3943?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17581017#comment-17581017 ] 

Clebert Suconic commented on ARTEMIS-3943:
------------------------------------------

You have to tune up your broker with max-read-message, max-read-size, and also min-large-message-size...

Starting in 2.25.0 there's a property named page-flow-control where we would also look at delivering messages count before more messages are read.

> Clients can cause broker OOM when reading paged messages
> --------------------------------------------------------
>
>                 Key: ARTEMIS-3943
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-3943
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>    Affects Versions: 2.24.0
>            Reporter: Anton Roskvist
>            Priority: Major
>
> Starting with version 2.24.0 of the broker, a single client can cause the broker to OOM and terminate if an address is paging and holds enough messages to collectively fill the broker heap.
> To reproduce:
> {code:java}
> $ apache-artemis-2.24.0/bin/artemis create broker
> $ broker/bin/artemis-service start
> $ broker/bin/artemis producer \
>   --destination TEST \
>   --text-size 100000 \
>   --message-count 100000{code}
> Optional:
> Tweak "message-count" + "text-size" above together with the "-Xmx"-property in artemis.profile to be able to trigger it faster
> Kill broker with:
> {code:java}
> $ broker/bin/artemis consumer \
>    --destination TEST \
>    --message-count 1 \
>    --url "(tcp://localhost:61616)?consumerWindowSize=-1" \
>    --sleep 60000{code}
> Not saying this is demonstrating proper usage of the client, but this was the easiest way I could think of to reproduce the problem.
> Running the same procedure against an older version of the broker results in no such issue



--
This message was sent by Atlassian Jira
(v8.20.10#820010)