You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@tajo.apache.org by "Hyunsik Choi (JIRA)" <ji...@apache.org> on 2014/10/10 19:16:34 UTC

[jira] [Comment Edited] (TAJO-1111) TestKillQuery.testKillQueryFromInitState occasionally fails

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

Hyunsik Choi edited comment on TAJO-1111 at 10/10/14 5:16 PM:
--------------------------------------------------------------

See the below line. I cannot ensure why KillTaskTransition is required in the terminal state {{KILLED}}. 
{noformat:title='QueryUnit.java'}
.addTransition(TaskState.KILLED, TaskState.KILLED, TaskEventType.T_ATTEMPT_KILLED, new KillTaskTransition())
{noformat}

If we ensure that {{KILLED}} state means {{QueryUnitAttempt}} is in {{KILLED}}, {{KillTaskTransition}} has no effect because {{TA_KILL}} event is ignored in the {{TA_KILLED}} state. 
{noformat:title='QueryUnitAttempt.java'}
.addTransition(TaskAttemptState.TA_KILLED, TaskAttemptState.TA_KILLED,
          EnumSet.of(
              TaskAttemptEventType.TA_LOCAL_KILLED,
              TaskAttemptEventType.TA_KILL,
              TaskAttemptEventType.TA_ASSIGNED,
              TaskAttemptEventType.TA_DONE),
          new TaskKilledCompleteTransition())
{noformat}

But, I won't modify the state transitions in this release. As far as I know, the current master is already being used in many productions. This change may cause potential side effect. After 0.9.0 release, we can investigate its necessity.


was (Author: hyunsik):
See the below line. I cannot ensure why KillTaskTransition is required in the terminal state KILLED. 
{noformat:title='QueryUnit.java'}
.addTransition(TaskState.KILLED, TaskState.KILLED, TaskEventType.T_ATTEMPT_KILLED, new KillTaskTransition())
{noformat}

If we ensure that KILLED state means QueryUnitAttempt is in KILLED, KillTaskTransition has no effect because TA_KILL event is ignored in the TA_KILLED state. 
{noformat:title='QueryUnitAttempt.java'}
.addTransition(TaskAttemptState.TA_KILLED, TaskAttemptState.TA_KILLED,
          EnumSet.of(
              TaskAttemptEventType.TA_LOCAL_KILLED,
              TaskAttemptEventType.TA_KILL,
              TaskAttemptEventType.TA_ASSIGNED,
              TaskAttemptEventType.TA_DONE),
          new TaskKilledCompleteTransition())
{noformat}

But, I won't modify the state transitions in this release. As far as I know, the current master is already being used in many productions. This change may cause potential side effect. After 0.9.0 release, we can investigate its necessity.

> TestKillQuery.testKillQueryFromInitState occasionally fails
> -----------------------------------------------------------
>
>                 Key: TAJO-1111
>                 URL: https://issues.apache.org/jira/browse/TAJO-1111
>             Project: Tajo
>          Issue Type: Bug
>          Components: query master
>            Reporter: Hyunsik Choi
>            Priority: Blocker
>             Fix For: 0.9.0
>
>
> See the title. this test occasionally fails.
> {noformat}
> [INFO] Results :
> [INFO] 
> [INFO] Failed tests: 
> [INFO]   TestKillQuery.testKillQueryFromInitState:104 expected:<QUERY_KILLED> but was:<QUERY_ERROR>
> [INFO] 
> [INFO] Tests run: 1234, Failures: 1, Errors: 0, Skipped: 0
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)