void WlmTask::run(const WorkloadManager::RunInfo& runInfo)
{
- _executor.loadTask(_yacsTask, runInfo);
- _executor.makeDatastreamConnections(_yacsTask);
- YACS::Event ev = _executor.runTask(_yacsTask);
- _executor.endTask(_yacsTask, ev);
+ if(runInfo.isOk)
+ {
+ _executor.loadTask(_yacsTask, runInfo);
+ _executor.makeDatastreamConnections(_yacsTask);
+ YACS::Event ev = _executor.runTask(_yacsTask);
+ _executor.endTask(_yacsTask, ev);
+ }
+ else
+ {
+ _executor.failTask(_yacsTask, runInfo.error_message);
+ }
delete this; // provisoire
}
newResource.nbCores = res.second;
wm.addResource(newResource);
}
+ wm.freezeResources();
}
}