Hi, I'm still trying to deal with apache tomcat web-app and hbase HBase 0.98.6 The root problem is that user threads constantly grows. I do get thousands of live threads on tomcat instance. Then it dies of course.
please see visualVM threads count dynamics [image: Встроенное изображение 1] Please see selected thread. It should be related to zookeeper (because of thread-name suffix SendThread) [image: Встроенное изображение 2] The threaddump for this thread is: "visit-thread-27799752116280271-EventThread" - Thread t@75 java.lang.Thread.State: WAITING at sun.misc.Unsafe.park(Native Method) - parking to wait for <34671cea> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043) at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442) at org.apache.zookeeper.ClientCnxn$EventThread.run(ClientCnxn.java:494) Locked ownable synchronizers: - None Why does it live "forever"? I next 24 hours I would get ~1200 live theads. "visit thread" does simple put/get by key, newrelic says it takes 30-40 ms to respond. I just set a name for the thread inside servlet method. Here is CPU profiling result: [image: Встроенное изображение 3] Here are some Zookeeper metrics. [image: Встроенное изображение 4]