kaisun2000 edited a comment on issue #1404:
URL: https://github.com/apache/helix/issues/1404#issuecomment-699550264
LOG 1734
>2020-09-26T07:51:37.7357007Z [ERROR]
stopDeleteJobAndResumeNamedQueue(org.apache.helix.integration.task.TestTaskRebalancerStopResume)
Time elapsed: 650.685 s <<< FAILURE!
2020-09-26T07:51:37.7455981Z org.apache.helix.HelixException: Workflow
"stopDeleteJobAndResumeNamedQueue" context is null or job
"stopDeleteJobAndResumeNamedQueue_slaveJob2_second" is not in states:
[COMPLETED]; ctx is ZnRecord=WorkflowContext,
{NAME=stopDeleteJobAndResumeNamedQueue, START_TIME=1601104360465,
**STATE=IN_PROGRESS**}{JOB_STATES={stopDeleteJobAndResumeNamedQueue_slaveJob1=COMPLETED,
stopDeleteJobAndResumeNamedQueue_slaveJob3=COMPLETED,
stopDeleteJobAndResumeNamedQueue_slaveJob4=COMPLETED},
StartTime={stopDeleteJobAndResumeNamedQueue_slaveJob1=1601104360757,
stopDeleteJobAndResumeNamedQueue_slaveJob3=1601104377687,
stopDeleteJobAndResumeNamedQueue_slaveJob4=1601104394366}}{}, Stat=Stat
{_version=0, _creationTime=0, _modifiedTime=0, _ephemeralOwner=0}, jobState is
null .
2020-09-26T07:51:37.7472762Z at
org.apache.helix.integration.task.TestTaskRebalancerStopResume.stopDeleteJobAndResumeNamedQueue(TestTaskRebalancerStopResume.java:255)
2020-09-26T07:51:37.7476604Z
2020-09-26T07:51:38.1533236Z [ERROR] Failures:
2020-09-26T07:51:38.1535848Z [ERROR]
TestTaskRebalancerStopResume.stopDeleteJobAndResumeNamedQueue:255 ยป Helix
Work...
code
```
public TaskState pollForJobState(String workflowName, String jobName, long
timeout,
TaskState... states) throws InterruptedException {
// Get workflow config
WorkflowConfig workflowConfig = getWorkflowConfig(workflowName);
if (workflowConfig == null) {
throw new HelixException(String.format("Workflow \"%s\" does not
exists!", workflowName));
}
long timeToSleep = timeout > 50L ? 50L : timeout;
WorkflowContext ctx;
if (workflowConfig.isRecurring()) {
// if it's recurring, need to reconstruct workflow and job name
do {
Thread.sleep(timeToSleep);
ctx = getWorkflowContext(workflowName);
} while ((ctx == null || ctx.getLastScheduledSingleWorkflow() ==
null));
jobName = jobName.substring(workflowName.length() + 1);
workflowName = ctx.getLastScheduledSingleWorkflow();
}
Set<TaskState> allowedStates = new HashSet<>(Arrays.asList(states));
// Wait for state
long st = System.currentTimeMillis();
do {
Thread.sleep(timeToSleep);
ctx = getWorkflowContext(workflowName);
} while ((ctx == null || ctx.getJobState(jobName) == null
|| !allowedStates.contains(ctx.getJobState(jobName)))
&& System.currentTimeMillis() < st + timeout);
if (ctx == null || !allowedStates.contains(ctx.getJobState(jobName))) {
throw new HelixException(
String.format("Workflow \"%s\" context is null or job \"%s\" is
not in states: %s; ctx is %s, jobState is %s .",
workflowName, jobName, allowedStates, ctx == null ? "null" :
ctx, ctx != null ? ctx.getJobState(jobName) : "null"));
}
return ctx.getJobState(jobName);
}
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]