code: public static GobblinMultiTaskAttempt runWorkUnits(JobContext jobContext, Iterator<WorkUnit> workUnits,
        TaskStateTracker taskStateTracker, TaskExecutor taskExecutor,
        CommitPolicy multiTaskAttemptCommitPolicy)
        throws IOException, InterruptedException {
      GobblinMultiTaskAttempt multiTaskAttempt =
          new GobblinMultiTaskAttempt(workUnits, jobContext.getJobId(), jobContext.getJobState(), taskStateTracker, taskExecutor,
              Optional.<String>absent(), Optional.<StateStore<TaskState>>absent(), jobContext.getJobBroker());
      multiTaskAttempt.runAndOptionallyCommitTaskAttempt(multiTaskAttemptCommitPolicy);
      return multiTaskAttempt;
    }
docs: FIXME this method is provided for backwards compatibility in the LocalJobLauncher since it does
  not access the task state store. This should be addressed as all task executions should be
  updating the task state.