You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tajo.apache.org by "hyoungjunkim (JIRA)" <ji...@apache.org> on 2013/12/30 07:24:50 UTC
[jira] [Updated] (TAJO-467) Too many open FD when master failed.
[ https://issues.apache.org/jira/browse/TAJO-467?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
hyoungjunkim updated TAJO-467:
------------------------------
Attachment: TAJO-467.patch
The code which uses RPC is like following.
{code}
NettyClientBase tmClient = null;
try {
tmClient = new BlockingRpcClient(...);
} finally {
if(tmClient != null) {
tmClient.close();
}
}
{code}
If failed creating NettyClientBase instance in the try block, NettyClientBase is null in the finally block and NettyClientBase's close() method is never called.
NettyClientBase allocates some resources in constructor. I added the code to release resources when the exception occurred in constructor.
Please review this patch.
> Too many open FD when master failed.
> ------------------------------------
>
> Key: TAJO-467
> URL: https://issues.apache.org/jira/browse/TAJO-467
> Project: Tajo
> Issue Type: Bug
> Reporter: hyoungjunkim
> Assignee: hyoungjunkim
> Attachments: TAJO-467.patch
>
>
> When Tajo Master failed and Worker still alive, too many open FD in worker's host.
> I checked with losf command. Showed the following list.
> {code}
> lsof -l | grep <pid> | grep wc -l
> 2568
> lsof -l | grep <pid>
> java 92845 501 110 PIPE 0xd63c81fc1ed6001b 16384 ->0xd63c81fc0aac406b
> java 92845 501 111 PIPE 0xd63c81fc0aac406b 16384 ->0xd63c81fc1ed6001b
> java 92845 501 112u KQUEUE count=0, state=0x2
> java 92845 501 113 PIPE 0xd63c81fc0d1441cb 16384 ->0xd63c81fc1ed6059b
> java 92845 501 114 PIPE 0xd63c81fc1ed6059b 16384 ->0xd63c81fc0d1441cb
> java 92845 501 115u KQUEUE count=0, state=0x2
> java 92845 501 116 PIPE 0xd63c81fc1edb140b 16384 ->0xd63c81fc1ed61cfb
> java 92845 501 117 PIPE 0xd63c81fc1ed61cfb 16384 ->0xd63c81fc1edb140b
> java 92845 501 118u KQUEUE count=0, state=0x2
> java 92845 501 119 PIPE 0xd63c81fc1eba61fb 16384 ->0xd63c81fc1eba727b
> java 92845 501 120 PIPE 0xd63c81fc1eba727b 16384 ->0xd63c81fc1eba61fb
> java 92845 501 121u KQUEUE count=0, state=0x2
> java 92845 501 122 PIPE 0xd63c81fc163b474b 16384 ->0xd63c81fc1ed61a3b
> java 92845 501 123 PIPE 0xd63c81fc1ed61a3b 16384 ->0xd63c81fc163b474b
> java 92845 501 124u KQUEUE count=0, state=0x2
> java 92845 501 125 PIPE 0xd63c81fc1ed68e3b 16384 ->0xd63c81fc1d530bfb
> java 92845 501 126 PIPE 0xd63c81fc1d530bfb 16384 ->0xd63c81fc1ed68e3b
> java 92845 501 127u KQUEUE count=0, state=0x2
> java 92845 501 128 PIPE 0xd63c81fc1d4848ab 16384 ->0xd63c81fc0aac1b4b
> java 92845 501 129 PIPE 0xd63c81fc0aac1b4b 16384 ->0xd63c81fc1d4848ab
> java 92845 501 130u KQUEUE count=0, state=0x2
> java 92845 501 131 PIPE 0xd63c81fc1fe3d74b 16384 ->0xd63c81fc0aac125b
> java 92845 501 132 PIPE 0xd63c81fc0aac125b 16384 ->0xd63c81fc1fe3d74b
> java 92845 501 133u KQUEUE count=0, state=0x2
> ...
> {code}
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)