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

Hyunsik Choi commented on TAJO-1111:
------------------------------------

As my investigation on the state machines, I found the two missed cases:

KILLED state cannot be transited to T_KILL, T_ATTEMPT_KILLED, or 
T_ATTEMPT_SUCCEEDED. The states may receive multiple times form workers because 
workers has some state reporter will periodically send the current task state. 
They are possible cases in concurrent and distributed cases.

I think that they should also handle T_ATTEMPT_FAILED in the same way. In sum, 
SUCCEEDED, FAILED, KILLED should handle T_KILL, T_ATTEMPT_KILLED, 
T_ATTEMPT_SUCCEEDED, or T_ATTEMPT_FAILED as ignorable state transitions.

In addition, It's possible if QUERY_ERROR state in Query  can take 
SUBQUERY_COMPLETED because KILLED and FAILED also send SUBQUERY_COMPLETED event 
to Query. In this case, we have to ignore because Query state is already in 
QUERY_ERROR.

I'll submit the patch soon.



> 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)

Reply via email to