hyoungjunkim created TAJO-103:
---------------------------------

             Summary: netty worker not released after server closed
                 Key: TAJO-103
                 URL: https://issues.apache.org/jira/browse/TAJO-103
             Project: Tajo
          Issue Type: Bug
          Components: master, rpc
    Affects Versions: 0.2-incubating
            Reporter: hyoungjunkim
            Priority: Minor


In current implementation shutdown() method in NettyServerBase class doesn't 
release socket resource. 
After invoke shutdown() method, bellow threads are running.
NettyServerBase must call factoy's releaseExternalResources() method To release 
socket resource and worker(netty document http://netty.io/3.5/guide/#start.12).

{code}
"New I/O  worker #16" prio=5 tid=7f944eb0b800 nid=0x11911c000 runnable 
[11911b000]
   java.lang.Thread.State: RUNNABLE
        at sun.nio.ch.KQueueArrayWrapper.kevent0(Native Method)
        at sun.nio.ch.KQueueArrayWrapper.poll(KQueueArrayWrapper.java:136)
        at sun.nio.ch.KQueueSelectorImpl.doSelect(KQueueSelectorImpl.java:69)
        at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:69)
        - locked <7f46c5428> (a sun.nio.ch.Util$2)
        - locked <7f46c5440> (a java.util.Collections$UnmodifiableSet)
        - locked <7f4562540> (a sun.nio.ch.KQueueSelectorImpl)
        at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:80)
        at 
org.jboss.netty.channel.socket.nio.SelectorUtil.select(SelectorUtil.java:64)
        at 
org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:244)
        at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:35)
        at 
org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:102)
        at 
org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
        at java.lang.Thread.run(Thread.java:680)

"New I/O  worker #15" prio=5 tid=7f944eaf9800 nid=0x119019000 runnable 
[119018000]
   java.lang.Thread.State: RUNNABLE
        at sun.nio.ch.KQueueArrayWrapper.kevent0(Native Method)
        at sun.nio.ch.KQueueArrayWrapper.poll(KQueueArrayWrapper.java:136)
        at sun.nio.ch.KQueueSelectorImpl.doSelect(KQueueSelectorImpl.java:69)
        at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:69)
        - locked <7f467c930> (a sun.nio.ch.Util$2)
        - locked <7f467c948> (a java.util.Collections$UnmodifiableSet)
        - locked <7f466ba30> (a sun.nio.ch.KQueueSelectorImpl)
        at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:80)
        at 
org.jboss.netty.channel.socket.nio.SelectorUtil.select(SelectorUtil.java:64)
        at 
org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:244)
        at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:35)
        at 
org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:102)
        at 
org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
        at java.lang.Thread.run(Thread.java:680)
{code}  

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to