Uploaded image for project: 'Qpid'
  1. Qpid
  2. QPID-7963

[AMQP1.0] Sending a large message to a client uses excessive heap memory

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • qpid-java-broker-7.0.0
    • qpid-java-broker-7.0.0
    • Broker-J
    • None

    Description

      Examining heap usage whilst running a large transient message test, I see that large AMQP 1.0 messages manifest fully on the heap whilst they traverse the Broker. Neither AMQP 0-9 not AMQP 0-10 do this.

      See attached jvisualvm screenshot. The spike at 3.17PM is a 300MB message being produced/consumed. Later in the same test (same graph) a 750MB message went over AMQP 0-9 and 0-10 messages with no discernible heap impact.

      Command line was:

      (export MAVEN_OPTS='-Xmx3g'; mvn package exec:java -f pom.xml -Dstresstest=qpid-jms-client -Dexec.args='messagecount=1 size=300000000 random=false jndiProperties=stress-test-client-qpid-jms-client.properties')

      Java Broker running with out of the box memory settings with -Dqpid.max_message_size=2000000000 -Dqpid.port.max_message_size=2000000000

      Attachments

        1. AMQP1.0transientmessagestraverseheap.png
          55 kB
          Keith Wall
        2. QPID-7963.diff
          2 kB
          Robert Godfrey

        Activity

          People

            orudyy Alex Rudyy
            kwall Keith Wall
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: