Database Reference
In-Depth Information
Object at 0x3a272e0
instance of -ea -Xdebug
-Xrunjdwp:transport=dt_socket,server=y,address=8888,suspend=n
-Xms128m -Xmx1G -XX:TargetSurvivorRatio=90 -XX:+AggressiveOpts
-XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled
-XX:+HeapDumpOnOutOfMemoryError
-XX:SurvivorRatio=128 -XX:MaxTenuringThreshold=0
-Dcom.sun.management.jmxremote.port=8080
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false -Dcassandra
-Dstorage-config=/opt/apache-cassandra-0.6.2/0.6.2-source/conf
-Dcassandra-foreground=yes (24 bytes)
This is a roundabout way to see your classpath switches, but it does give you an idea of how
JMap and JHAT can help you find interesting information about your runtime state.
Detecting Thread Problems
If you are seeing slowness or uncontrollable growth in the JConsole, you might want to inspect
the current thread behavior. Cassandra makes heavy use of thread pools and the Java concur-
rency libraries, so understanding their state can be important to debugging efforts.
In the console, click the Threads tab. The window on the left will show you a list of threads
and pools, and you can click any of them to see a stack. This view will also show you their cur-
rent state. If you see any threads in a stuck state, that's a sign that your server is not releasing
resources as it should, and you will start to see performance bottlenecks around this thread. If
many stuck threads begin to queue up in a stuck state, your server will eventually crash. If you're
seeing unusual growth in heap usage where garbage collection is not reclaiming space, you might
have an issue with stuck threads, and you can check this area of the console to determine thread
state.
NOTE
In Java, a “stuck” thread is a thread that the application has transitioned to the “stuck” state following
a timeout period; that is, the application has decided that after a certain amount of time during which
work is not being completed, the thread will never complete its work. This can prevent it from getting
returned to the thread pool, which means fewer threads will be available for new work, which means
performance will start crumbling.
Finally, you can click the Detect Deadlock button if you're concerned that you might have in-
ternal deadlocked threads.
Search WWH ::




Custom Search