Are you using jdk 6? This looks like https://github.com/netty/netty/issues/327 / http://bugs.java.com/view_bug.do?bug_id=6403933 which is supposed to be fixd in jdk7.
---------- Andrey Yegorov On Tue, Sep 16, 2014 at 11:11 AM, Milad Fatenejad <[email protected]> wrote: > Hello: > > I am running a very simple storm topology (1 spout and 2 bolts). I > noticed that when idle, the topology worker was consuming ~50% CPU on > one of my VMs. I connected visual VM to the worker to profile and > noticed that the bulk of the CPU time was spent in > > org.jboss.netty.channel.socket.nio.SelectorUtil.select() > > I did a thread dump and noticed that there are 219 threads in this > method, an example is shown below. Is there some configuration setting > that controls the number of these threads that I am not setting? I am > using storm from github/master.. > > Thank You > Milad > > "pool-153-thread-1" - Thread t@373 > > java.lang.Thread.State: RUNNABLE > at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method) > at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269) > at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:79) > at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86) > - locked <3475352a> (a sun.nio.ch.Util$2) > - locked <40e29dbf> (a java.util.Collections$UnmodifiableSet) > - locked <6722c404> (a sun.nio.ch.EPollSelectorImpl) > at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97) > at > org.jboss.netty.channel.socket.nio.SelectorUtil.select(SelectorUtil.java:64) > at > org.jboss.netty.channel.socket.nio.AbstractNioSelector.select(AbstractNioSelector.java:409) > at > org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:206) > at > org.jboss.netty.channel.socket.nio.NioClientBoss.run(NioClientBoss.java:41) > at > org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) > at > org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) > at java.lang.Thread.run(Thread.java:745) > > Here is my storm.yml: > > storm.zookeeper.servers: > - "%zookeeper%" > > nimbus.host: "%nimbus%" > > worker.childopts: "-Xmx768m -Dcom.sun.management.jmxremote > -Dcom.sun.management.jmxremote.ssl=false > -Dcom.sun.management.jmxremote.authenticate=false > -Dcom.sun.management.jmxremote.port=1%ID%" >
