WorkflowActionSpecification actionSpec = iterator.next();
workflowStatus = new WorkflowStatus(state(), actionSpec, step++);
WorkflowAction action = initialize(actionSpec, classLoader, instantiator);
try {
action.run();
} catch (Throwable t) {
LOG.warn("Exception on WorkflowAction.run(), aborting Workflow. {}", actionSpec);
// this will always rethrow
Throwables.propagateIfPossible(t, Exception.class);
} finally {