You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@tez.apache.org by "Jeff Zhang (JIRA)" <ji...@apache.org> on 2015/05/20 07:18:00 UTC
[jira] [Comment Edited] (TEZ-1273) Refactor DAGAppMaster to state
machine based
[ https://issues.apache.org/jira/browse/TEZ-1273?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14551825#comment-14551825 ]
Jeff Zhang edited comment on TEZ-1273 at 5/20/15 5:17 AM:
----------------------------------------------------------
[~hitesh] Please help review it.
* Please check the attachment for the state machine details (DAGAppMaster_4.pdf).
** One ugly case is the DAG_CLEANUP_TRANSITION, it can happens both in IDLE and RUNNING which may be a little confusing. Because we need to allow user to submit another dag when the previous dag is completed but the its dag clean up has not been done.
** remove the synchronized, use writelock instead.
* Use RunningAppContext#isDAGRunning to replace RunningAppContext#getAMState. This is to resolve the deadlock issue in TEZ-2359.
* Unit test is added in TestMockDAGAppMaster
was (Author: zjffdu):
[~hitesh] Please help review it.
* Please check the attachment for the state machine details (DAGAppMaster_4.pdf).
** One ugly case is the DAG_CLEANUP_TRANSITION, it can happens both in IDLE and RUNNING which may be a little confusing. Because we need to allow user to submit another dag when the previous dag is completed but the its dag clean up has been done.
** remove the synchronized, use writelock instead.
* Use RunningAppContext#isDAGRunning to replace RunningAppContext#getAMState. This is to resolve the deadlock issue in TEZ-2359.
* Unit test is added in TestMockDAGAppMaster
> Refactor DAGAppMaster to state machine based
> --------------------------------------------
>
> Key: TEZ-1273
> URL: https://issues.apache.org/jira/browse/TEZ-1273
> Project: Apache Tez
> Issue Type: Improvement
> Affects Versions: 0.4.0
> Reporter: Jeff Zhang
> Assignee: Jeff Zhang
> Attachments: DAGAppMaster_3.pdf, DAGAppMaster_4.pdf, TEZ-1273-3.patch, TEZ-1273-4.patch, TEZ-1273-5.patch, TEZ-1273-6.patch, TEZ-1273-7.patch, Tez-1273-2.patch, Tez-1273.patch, dag_app_master.pdf, dag_app_master2.pdf
>
>
> Almost all our entities (Vertex, Task etc) are state machine based and written using a formal state machine. But DAGAppMaster is not written on a formal state machine even though it has a state machine based behavior. This jira is for refactoring it into state machine based
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)