activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From GaryG <ggive...@us.ibm.com>
Subject Re: Non-Persistent Topic not getting messages
Date Thu, 22 Feb 2007 03:25:50 GMT

AMQ Broker is down again.  Same situation.  However, running "jstack" on the
PID doesn't work, it hangs connecting to the process.

So, I opened up the JMX console, and am providing you some of stats that
looked interesting.

My main questions regarding this output are:

1) Why does Broker memory limit seem to be 20 MB, when the Broker java
process is explicitly started with 512MB.  I thought this was the setting by
default?  Am I missing something?  Should there be some explicit option set
in the activemq.xml to set the memory limit much higher?

2)  Why is there a mismatch between JMS summary output for memory and this
obscure tab for the Broker specifically?  Are they not the same thing?

=========

JMX
----

Live Threads
============

main
--------------
Name: main
State: WAITING on [Z@16e3762
Total blocked: 33  Total waited: 5

Stack trace: 
java.lang.Object.wait(Native Method)
java.lang.Object.wait(Object.java:474)
org.apache.activemq.console.command.StartCommand.waitForShutdown(StartCommand.java:107)
org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:68)
org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:50)
org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:82)
org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:50)
org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:46)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:585)
org.apache.activemq.console.Main.runTaskClass(Main.java:159)
org.apache.activemq.console.Main.main(Main.java:91)
-------------------

Name: ActiveMQ Transport Server: tcp://atla-dev-aic2.mss.iss.net:61616
State: RUNNABLE
Total blocked: 2  Total waited: 6

Stack trace: 
java.net.PlainSocketImpl.socketAccept(Native Method)
java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
java.net.ServerSocket.implAccept(ServerSocket.java:450)
java.net.ServerSocket.accept(ServerSocket.java:421)
org.apache.activemq.transport.tcp.TcpTransportServer.run(TcpTransportServer.java:153)
java.lang.Thread.run(Thread.java:595)

------------------
ALL the transports look like this(ip obscured).  Looks like they're all out
of memory.
Either RAM or DISK???

Name: ActiveMQ Transport: tcp:///xxxxxxxxx:60230
State: WAITING on java.lang.Object@7834eb
Total blocked: 24  Total waited: 1

Stack trace: 
java.lang.Object.wait(Native Method)
java.lang.Object.wait(Object.java:474)
org.apache.activemq.memory.UsageManager.waitForSpace(UsageManager.java:91)
org.apache.activemq.memory.UsageManager.waitForSpace(UsageManager.java:88)
org.apache.activemq.broker.region.Topic.send(Topic.java:239)
org.apache.activemq.broker.region.AbstractRegion.send(AbstractRegion.java:292)
org.apache.activemq.broker.region.RegionBroker.send(RegionBroker.java:380)
org.apache.activemq.broker.TransactionBroker.send(TransactionBroker.java:193)
org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:126)
org.apache.activemq.broker.CompositeDestinationBroker.send(CompositeDestinationBroker.java:98)
org.apache.activemq.broker.MutableBrokerFilter.send(MutableBrokerFilter.java:136)
org.apache.activemq.broker.TransportConnection.processMessage(TransportConnection.java:480)
org.apache.activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java:604)
org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:284)
org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:177)
org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:65)
org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:133)
org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:122)
org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:84)
org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:137)
java.lang.Thread.run(Thread.java:595)

---------------------------

JMX Summary:

Memory
Current heap size: 
    15,134 kbytes
Committed memory: 
    25,088 kbytes
Maximum heap size: 
   504,896 kbytes
Objects pending for finalization: 
     0
Garbage collector: 
Name = 'PS MarkSweep', Collections = 359, Total time spent = 33.082 seconds
Garbage collector: 
Name = 'PS Scavenge', Collections = 50, Total time spent = 0.121 seconds

=========================

In JMX Consoler, clicking on MBeans tab, then selecting:
org.apache.activemq -->amqDev2 --> Broker

Under Attributes tab, the MemoryLimit is 20 MB, even though the java process
for AMQ was started with 512MB.
The memory % used says 100%.

But this doesn't match the Summary Memory stats. What is this limit?

-- 
View this message in context: http://www.nabble.com/Non-Persistent-Topic-not-getting-messages-tf3264593s2354.html#a9093767
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Mime
View raw message