You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tajo.apache.org by "Min Zhou (JIRA)" <ji...@apache.org> on 2014/01/20 00:37:20 UTC

[jira] [Created] (TAJO-522) OutOfMemoryError: unable to create new native thread

Min Zhou created TAJO-522:
-----------------------------

             Summary: OutOfMemoryError: unable to create new native thread
                 Key: TAJO-522
                 URL: https://issues.apache.org/jira/browse/TAJO-522
             Project: Tajo
          Issue Type: Bug
    Affects Versions: 0.8-incubating
            Reporter: Min Zhou
            Priority: Critical


Another exception occurs on the client side when I run a query 

{noformat}
Progress: 0%, response time: 190.197 sec
com.google.protobuf.ServiceException: java.lang.OutOfMemoryError: unable to create new native thread
	at org.apache.tajo.client.TajoClient.getQueryStatus(TajoClient.java:193)
	at org.apache.tajo.cli.TajoCli.getQueryResult(TajoCli.java:353)
	at org.apache.tajo.cli.TajoCli.executeStatements(TajoCli.java:319)
	at org.apache.tajo.cli.TajoCli.runShell(TajoCli.java:228)
	at org.apache.tajo.cli.TajoCli.main(TajoCli.java:735)
Caused by: java.io.IOException: java.lang.OutOfMemoryError: unable to create new native thread
	at org.apache.tajo.rpc.NettyClientBase.init(NettyClientBase.java:76)
	at org.apache.tajo.rpc.BlockingRpcClient.<init>(BlockingRpcClient.java:71)
	at org.apache.tajo.rpc.RpcConnectionPool.makeConnection(RpcConnectionPool.java:54)
	at org.apache.tajo.rpc.RpcConnectionPool.getConnection(RpcConnectionPool.java:63)
	at org.apache.tajo.client.TajoClient.getQueryStatus(TajoClient.java:188)
	... 4 more
Caused by: java.lang.OutOfMemoryError: unable to create new native thread
	at java.lang.Thread.start0(Native Method)
	at java.lang.Thread.start(Thread.java:640)
	at java.util.concurrent.ThreadPoolExecutor.addIfUnderMaximumPoolSize(ThreadPoolExecutor.java:727)
	at java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:657)
	at org.jboss.netty.util.internal.DeadLockProofWorker.start(DeadLockProofWorker.java:38)
	at org.jboss.netty.channel.socket.nio.AbstractNioSelector.openSelector(AbstractNioSelector.java:343)
	at org.jboss.netty.channel.socket.nio.AbstractNioSelector.<init>(AbstractNioSelector.java:95)
	at org.jboss.netty.channel.socket.nio.AbstractNioWorker.<init>(AbstractNioWorker.java:53)
	at org.jboss.netty.channel.socket.nio.NioWorker.<init>(NioWorker.java:45)
	at org.jboss.netty.channel.socket.nio.NioWorkerPool.createWorker(NioWorkerPool.java:45)
	at org.jboss.netty.channel.socket.nio.NioWorkerPool.createWorker(NioWorkerPool.java:28)
	at org.jboss.netty.channel.socket.nio.AbstractNioWorkerPool.newWorker(AbstractNioWorkerPool.java:99)
	at org.jboss.netty.channel.socket.nio.AbstractNioWorkerPool.init(AbstractNioWorkerPool.java:69)
	at org.jboss.netty.channel.socket.nio.NioWorkerPool.<init>(NioWorkerPool.java:39)
	at org.jboss.netty.channel.socket.nio.NioWorkerPool.<init>(NioWorkerPool.java:33)
	at org.jboss.netty.channel.socket.nio.NioClientSocketChannelFactory.<init>(NioClientSocketChannelFactory.java:151)
	at org.jboss.netty.channel.socket.nio.NioClientSocketChannelFactory.<init>(NioClientSocketChannelFactory.java:116)
	at org.apache.tajo.rpc.NettyClientBase.init(NettyClientBase.java:54)
	... 8 more
java.lang.OutOfMemoryError: unable to create new native thread
2014-01-19 23:12:19,975 WARN  client.TajoClient (TajoClient.java:closeQuery(110)) - Fail to close a QueryMaster connection (qid=q_1390100273039_0012, msg=java.lang.OutOfMemoryError: unable to create new native thread)
java.io.IOException: java.lang.OutOfMemoryError: unable to create new native thread
	at org.apache.tajo.rpc.NettyClientBase.init(NettyClientBase.java:76)
	at org.apache.tajo.rpc.BlockingRpcClient.<init>(BlockingRpcClient.java:71)
	at org.apache.tajo.rpc.RpcConnectionPool.makeConnection(RpcConnectionPool.java:54)
	at org.apache.tajo.rpc.RpcConnectionPool.getConnection(RpcConnectionPool.java:63)
	at org.apache.tajo.client.TajoClient.closeQuery(TajoClient.java:106)
	at org.apache.tajo.cli.TajoCli.executeStatements(TajoCli.java:323)
	at org.apache.tajo.cli.TajoCli.runShell(TajoCli.java:228)
	at org.apache.tajo.cli.TajoCli.main(TajoCli.java:735)
Caused by: java.lang.OutOfMemoryError: unable to create new native thread
	at java.lang.Thread.start0(Native Method)
	at java.lang.Thread.start(Thread.java:640)
	at java.util.concurrent.ThreadPoolExecutor.addIfUnderMaximumPoolSize(ThreadPoolExecutor.java:727)
	at java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:657)
	at org.jboss.netty.util.internal.DeadLockProofWorker.start(DeadLockProofWorker.java:38)
	at org.jboss.netty.channel.socket.nio.AbstractNioSelector.openSelector(AbstractNioSelector.java:343)
	at org.jboss.netty.channel.socket.nio.AbstractNioSelector.<init>(AbstractNioSelector.java:95)
	at org.jboss.netty.channel.socket.nio.AbstractNioWorker.<init>(AbstractNioWorker.java:53)
	at org.jboss.netty.channel.socket.nio.NioWorker.<init>(NioWorker.java:45)
	at org.jboss.netty.channel.socket.nio.NioWorkerPool.createWorker(NioWorkerPool.java:45)
	at org.jboss.netty.channel.socket.nio.NioWorkerPool.createWorker(NioWorkerPool.java:28)
	at org.jboss.netty.channel.socket.nio.AbstractNioWorkerPool.newWorker(AbstractNioWorkerPool.java:99)
	at org.jboss.netty.channel.socket.nio.AbstractNioWorkerPool.init(AbstractNioWorkerPool.java:69)
	at org.jboss.netty.channel.socket.nio.NioWorkerPool.<init>(NioWorkerPool.java:39)
	at org.jboss.netty.channel.socket.nio.NioWorkerPool.<init>(NioWorkerPool.java:33)
	at org.jboss.netty.channel.socket.nio.NioClientSocketChannelFactory.<init>(NioClientSocketChannelFactory.java:151)
	at org.jboss.netty.channel.socket.nio.NioClientSocketChannelFactory.<init>(NioClientSocketChannelFactory.java:116)
	at org.apache.tajo.rpc.NettyClientBase.init(NettyClientBase.java:54)
	... 7 more
{noformat}


I am not sure why client side need to create quite a lot of threads.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)