You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@tajo.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2015/07/20 11:08:04 UTC
[jira] [Commented] (TAJO-1399) TajoResourceAllocator might hang on
network error
[ https://issues.apache.org/jira/browse/TAJO-1399?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14633203#comment-14633203 ]
ASF GitHub Bot commented on TAJO-1399:
--------------------------------------
Github user asfgit closed the pull request at:
https://github.com/apache/tajo/pull/420
> TajoResourceAllocator might hang on network error
> -------------------------------------------------
>
> Key: TAJO-1399
> URL: https://issues.apache.org/jira/browse/TAJO-1399
> Project: Tajo
> Issue Type: Bug
> Components: RPC
> Reporter: Navis
> Assignee: Navis
> Fix For: 0.11.0
>
>
> {code}
> CallFuture<WorkerResourceAllocationResponse> callBack = new CallFuture<WorkerResourceAllocationResponse>();
> ...
> RpcConnectionPool connPool = RpcConnectionPool.getPool();
> NettyClientBase tmClient = null;
> try {
> ServiceTracker serviceTracker = queryTaskContext.getQueryMasterContext().getWorkerContext().getServiceTracker();
> tmClient = connPool.getConnection(serviceTracker.getUmbilicalAddress(), QueryCoordinatorProtocol.class, true);
> QueryCoordinatorProtocolService masterClientService = tmClient.getStub();
> masterClientService.allocateWorkerResources(null, request, callBack);
> } catch (Throwable e) {
> LOG.error(e.getMessage(), e);
> } finally {
> connPool.releaseConnection(tmClient);
> }
> WorkerResourceAllocationResponse response = null;
> while(!stopped.get()) {
> try {
> response = callBack.get(3, TimeUnit.SECONDS);
> ...
> {code}
> If "callBack" is not registered properly in netty by failed connection, etc., allocator thread would block on empty future forever, possibly making thread leakage.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)