You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@oozie.apache.org by "Robert Kanter (JIRA)" <ji...@apache.org> on 2016/07/13 00:25:20 UTC

[jira] [Comment Edited] (OOZIE-2579) Bulk kill tests in TestBulkWorkflowXCommand might fail because of a race condition

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

Robert Kanter edited comment on OOZIE-2579 at 7/13/16 12:25 AM:
----------------------------------------------------------------

+1

Test failures are unrelated.


was (Author: rkanter):
+1

> Bulk kill tests in TestBulkWorkflowXCommand might fail because of a race condition
> ----------------------------------------------------------------------------------
>
>                 Key: OOZIE-2579
>                 URL: https://issues.apache.org/jira/browse/OOZIE-2579
>             Project: Oozie
>          Issue Type: Bug
>            Reporter: Peter Bacsko
>            Assignee: Peter Bacsko
>            Priority: Minor
>         Attachments: OOZIE-2579-001.patch, OOZIE-2579-002.patch
>
>
> There are tests in TestBulkWorkflowXCommand which perform bulk killing.
> This might fail sometimes, because the {{externalChildIDs}} is set to "00000001-dummy-oozie-wrkf-W " that causes an action to fail:
> {code}
> org.apache.oozie.action.ActionExecutorException: IllegalArgumentException: JobId string : 00000001-dummy-oozie-wrkf-W is not properly formed
> 	at org.apache.oozie.action.ActionExecutor.convertException(ActionExecutor.java:443)
> 	at org.apache.oozie.action.hadoop.JavaActionExecutor.kill(JavaActionExecutor.java:1614)
> 	at org.apache.oozie.command.wf.ActionKillXCommand.execute(ActionKillXCommand.java:146)
> 	at org.apache.oozie.command.wf.ActionKillXCommand.execute(ActionKillXCommand.java:1)
> 	at org.apache.oozie.command.XCommand.call(XCommand.java:287)
> 	at org.apache.oozie.service.CallableQueueService$CompositeCallable.call(CallableQueueService.java:331)
> 	at org.apache.oozie.service.CallableQueueService$CompositeCallable.call(CallableQueueService.java:260)
> 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
> 	at org.apache.oozie.service.CallableQueueService$CallableWrapper.run(CallableQueueService.java:178)
> 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> 	at java.lang.Thread.run(Thread.java:745)
> Caused by: java.lang.IllegalArgumentException: JobId string : 00000001-dummy-oozie-wrkf-W is not properly formed
> 	at org.apache.hadoop.mapreduce.JobID.forName(JobID.java:154)
> 	at org.apache.hadoop.mapred.JobID.forName(JobID.java:78)
> 	at org.apache.oozie.action.hadoop.MapReduceActionExecutor.getRunningJob(MapReduceActionExecutor.java:342)
> 	at org.apache.oozie.action.hadoop.JavaActionExecutor.kill(JavaActionExecutor.java:1604)
> 	... 10 more
> {code}
> Since this code runs on a separate thread, it might randomly interfere with the main test logic, which expects the job status to be "KILLED", but sometimes the ActionKillXCommand has a chance to update it to "FAILED".
> Solution: set a proper (parseable) job id:
> {code}
> action.setExternalChildIDs("job_201601011800_0001");
> {code}
> See https://hadoop.apache.org/docs/r2.6.2/api/org/apache/hadoop/mapred/JobID.html



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