Uploaded image for project: 'ActiveMQ Artemis'
  1. ActiveMQ Artemis
  2. ARTEMIS-3128

Queue browser may cause OutOfMemoryError on server side

VotersWatch issueWatchersLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Critical
    • Resolution: Fixed
    • 2.15.0
    • 2.18.0
    • JMX, Web Console
    • None
    • 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)

    Description

      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)

      Attachments

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            gtully Gary Tully
            perdurabo Christian Danner
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Issue deployment