{
// time distribution planning
long distributedPlanningStart = System.nanoTime();
// plan the execution on the active nodes
DistributedExecutionPlanner distributedPlanner = new DistributedExecutionPlanner(splitManager, stateMachine.getSession(), shardManager);
StageExecutionPlan outputStageExecutionPlan = distributedPlanner.plan(subplan);
if (stateMachine.isDone()) {
return;
}