[ 
https://issues.apache.org/jira/browse/HIVE-2017?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13088885#comment-13088885
 ] 

Chinna Rao Lalam commented on HIVE-2017:
----------------------------------------

while processing two parallel tasks if one of the task fails the 
Driver.taskCleanup() will call system.exit() this will shutdown the jvm so it 
is replaced with the logic to stop the remaining tasks.. Here need to cleanup 2 
kinds of tasks one is non-mr tasks and  mr tasks. For stopping non-mr tasks 
used the thread.interrupt() because every non-mr task will be executed as a 
thread and for mr tasks maintained a variable called jobKillUri's this variable 
will track the spawned job kill uri, in taskCleanup() if it is a mr task using 
this variable kill the job. 

> Driver.execute() should maintaining SessionState in case of runtime errors
> --------------------------------------------------------------------------
>
>                 Key: HIVE-2017
>                 URL: https://issues.apache.org/jira/browse/HIVE-2017
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Ning Zhang
>            Assignee: Chinna Rao Lalam
>         Attachments: HIVE-2017.1.patch
>
>
> Here's a snippet from Driver.execute():
> {code}
>             // TODO: This error messaging is not very informative. Fix that.
>             errorMessage = "FAILED: Execution Error, return code " + exitVal 
> + " from "
>                 + tsk.getClass().getName();
>             SQLState = "08S01";
>             console.printError(errorMessage);
>             if (running.size() != 0) {
>               taskCleanup();
>             }
>             return 9;
> {code}
> I simply returned in case of runtime errors without maintaining SessionState. 
> It could cause resource leak mentioned in HIVE-1959. 

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to