There needs to be a pause between batches of messages produced by the client to
avoid OutOfMemory error
-------------------------------------------------------------------------------------------------------
Key: QPID-395
URL: https://issues.apache.org/jira/browse/QPID-395
Project: Qpid
Issue Type: Bug
Components: Java Performance Tests
Reporter: Bhupendra Bhardwaj
Assigned To: Bhupendra Bhardwaj
Priority: Minor
The Mina layer throws OutOfMemoryError if the messages of high size like 100k
are sent with non-transacted clients.
To avoid this, a pause of few seconds needs to be set between each batch of
messages.
The error is -
Exception in thread "Thread-2" java.lang.OutOfMemoryError: Java heap space
org.apache.mina.filter.codec.ProtocolEncoderException:
java.lang.OutOfMemoryError: Java heap space
at
org.apache.mina.filter.codec.ProtocolCodecFilter.filterWrite(ProtocolCodecFilter.java:241)
at
org.apache.mina.common.support.AbstractIoFilterChain.callPreviousFilterWrite(AbstractIoFilterChain.java:573)
at
org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:52)
at
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.filterWrite(AbstractIoFilterChain.java:789)
at
org.apache.mina.common.support.AbstractIoFilterChain$2.filterWrite(AbstractIoFilterChain.java:213)
at
org.apache.mina.common.support.AbstractIoFilterChain.callPreviousFilterWrite(AbstractIoFilterChain.java:573)
at
org.apache.mina.common.support.AbstractIoFilterChain.fireFilterWrite(AbstractIoFilterChain.java:564)
at
org.apache.mina.transport.socket.nio.SocketSessionImpl.write0(SocketSessionImpl.java:186)
at
org.apache.mina.common.support.BaseIoSession.write(BaseIoSession.java:146)
at
org.apache.mina.common.support.BaseIoSession.write(BaseIoSession.java:132)
at
org.apache.qpid.client.protocol.AMQProtocolSession.writeFrame(AMQProtocolSession.java:282)
at
org.apache.qpid.client.protocol.AMQProtocolHandler.writeFrame(AMQProtocolHandler.java:422)
at
org.apache.qpid.client.BasicMessageProducer.sendImpl(BasicMessageProducer.java:508)
at
org.apache.qpid.client.BasicMessageProducer.sendImpl(BasicMessageProducer.java:420)
at
org.apache.qpid.client.BasicMessageProducer.send(BasicMessageProducer.java:297)
at
org.apache.qpid.requestreply.PingPongProducer.sendMessage(PingPongProducer.java:1206)
at
org.apache.qpid.requestreply.PingPongProducer.pingNoWaitForReply(PingPongProducer.java:871)
at
org.apache.qpid.requestreply.PingPongProducer.pingAndWaitForReply(PingPongProducer.java:782)
at
org.apache.qpid.requestreply.PingPongProducer.pingAndWaitForReply(PingPongProducer.java:742)
at
org.apache.qpid.ping.PingAsyncTestPerf.testAsyncPingOk(PingAsyncTestPerf.java:177)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
uk.co.thebadgerset.junit.extensions.AsymptoticTestCase.runTest(AsymptoticTestCase.java:225)
at junit.framework.TestCase.runBare(TestCase.java:127)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at
uk.co.thebadgerset.junit.extensions.TKTestResult.run(TKTestResult.java:382)
at junit.framework.TestCase.run(TestCase.java:118)
at junit.framework.TestSuite.runTest(TestSuite.java:208)
at junit.framework.TestSuite.run(TestSuite.java:203)
at junit.extensions.TestDecorator.basicRun(TestDecorator.java:22)
at junit.extensions.TestDecorator.run(TestDecorator.java:28)
at junit.extensions.TestDecorator.basicRun(TestDecorator.java:22)
at junit.extensions.TestDecorator.run(TestDecorator.java:28)
at
uk.co.thebadgerset.junit.extensions.AsymptoticTestDecorator.run(AsymptoticTestDecorator.java:159)
at
uk.co.thebadgerset.junit.extensions.ScaledTestDecorator$TestThreadHandler.run(ScaledTestDecorator.java:268)
at java.lang.Thread.run(Thread.java:595)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.