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

Chen He commented on TEZ-707:
-----------------------------

Thank you for the comments, [~sseth].

I set the maximium queue size is 2 * number of allowed executions to make the 
queue little bit larger than the allowed executions. It is used to deal with 
following corner case:
Assume the executor's pool size is N (maximium is 2N), if an event launched 
more tasks than N. the queue in the thread executor can hold them for a given 
period (configurable) without losing track of those tasks that not allowed to 
run. If one task finishes, executor will automatically release one waiting task 
from the queue and let it run. The maximium queue size is used as buffer for 
those waiting tasks. If we set maximium queue size = pool size, we may lose 
some task and cause DAG fail.

I agree with you on the second suggestion. 

> Create LocalContainerLauncher
> -----------------------------
>
>                 Key: TEZ-707
>                 URL: https://issues.apache.org/jira/browse/TEZ-707
>             Project: Apache Tez
>          Issue Type: Sub-task
>    Affects Versions: 0.3.0
>            Reporter: Chen He
>            Assignee: Chen He
>            Priority: Blocker
>         Attachments: TEZ-707-2014-7015.patch, TEZ-707-2014-7015.patch.review, 
> TEZ-707-v3.patch, TEZ-707-v4.patch, TEZ-707.patch, TEZ-707.patch, 
> Tez-707.patch.v2, tez-707.patch
>
>
> Create LocalContainerLauncher and make it work for a single stage DAG. The 
> TaskSchedulerEventHandler still asks RM for new container but 
> LocalContainerLauncher will run TezTask in form of thread instead of using 
> this container from yarn. 



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to