Out of Memory Causing STOMP connection failure
----------------------------------------------

                 Key: AMQ-1286
                 URL: https://issues.apache.org/activemq/browse/AMQ-1286
             Project: ActiveMQ
          Issue Type: Bug
          Components: Connector
    Affects Versions: 4.1.1
         Environment: linux redhat AS/3

            Reporter: Joel Schaubert
            Priority: Critical


We are testing ActiveMQ with STOMP clients in our QA environments.
When we finish testing the brokers stay up running idle in their instances.
The next day when we come back for more testing, our STOMP clients hang trying 
to read the connection response from the broker.

-bash-2.05b$ ./activemq_tester  -d sub
Connecting......OK
Sending connect message.OK
Reading Response.

The activemq logs reveal that an out of memory error made the broker unable to 
spin a worker thread to handle the new connection.

After a shutdown and restart of the broker, everything works fine.
Our broker is lightly loaded during the testing and sits idle overnight so it's 
not obvious why it would run out of memory.


ame=stomp,ViewType=address,Name=/10.52.90.118_1448

WARN  ManagedTransportConnection     - Failed to register MBean: 
org.apache.activemq:BrokerName=localhost,Type=Connection,ConnectorName=stomp,ViewType=address,Name=/10.52.90.118_3151

WARN  ManagedTransportConnection     - Failed to register MBean: 
org.apache.activemq:BrokerName=localhost,Type=Connection,ConnectorName=stomp,ViewType=address,Name=/10.52.90.118_5824

Exception in thread "ActiveMQ Transport Server: 
stomp://plt25m3.etrade.com:61613" java.lang.OutOfMemoryError: unable to create 
new native thread

        at java.lang.Thread.start0(Native Method)

        at java.lang.Thread.start(Thread.java:574)

        at 
org.apache.activemq.transport.TransportThreadSupport.doStart(TransportThreadSupport.java:44)

        at 
org.apache.activemq.transport.tcp.TcpTransport.doStart(TcpTransport.java:304)

        at org.apache.activemq.util.ServiceSupport.start(ServiceSupport.java:49)

        at 
org.apache.activemq.transport.TransportFilter.start(TransportFilter.java:54)

        at 
org.apache.activemq.transport.TransportFilter.start(TransportFilter.java:54)

        at 
org.apache.activemq.transport.TransportFilter.start(TransportFilter.java:54)

        at 
org.apache.activemq.broker.TransportConnection.start(TransportConnection.java:816)

        at 
org.apache.activemq.broker.TransportConnector$1.onAccept(TransportConnector.java:148)

        at 
org.apache.activemq.transport.tcp.TcpTransportServer.run(TcpTransportServer.java:167)

        at java.lang.Thread.run(Thread.java:595)

Exception in thread "RMI RenewClean-[10.52.90.15:59951]" 
java.lang.OutOfMemoryError: unable to create new native thread

        at java.lang.Thread.start0(Native Method)

        at java.lang.Thread.start(Thread.java:574)

        at sun.rmi.transport.tcp.TCPChannel.free(TCPChannel.java:322)

        at sun.rmi.server.UnicastRef.free(UnicastRef.java:395)

        at sun.rmi.server.UnicastRef.done(UnicastRef.java:412)

        at sun.rmi.transport.DGCImpl_Stub.dirty(Unknown Source)

        at 
sun.rmi.transport.DGCClient$EndpointEntry.makeDirtyCall(DGCClient.java:328)

        at 
sun.rmi.transport.DGCClient$EndpointEntry.access$1600(DGCClient.java:144)

        at 
sun.rmi.transport.DGCClient$EndpointEntry$RenewCleanThread.run(DGCClient.java:539)

        at java.lang.Thread.run(Thread.java:595)


Using default startup script which allows java vm 512MB and this setting in the 
conf/activemq.xml file

    <memoryManager>  
        <usageManager id="memory-manager" limit="512 MB"/>
    </memoryManager>



-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to