public static void addDependentMoveTasks(Task<MoveWork> mvTask, HiveConf hconf,
      Task<?> parentTask, DependencyCollectionTask dependencyTask) {

    if (mvTask != null) {
      if (dependencyTask != null) {
        parentTask.addDependentTask(dependencyTask);
        if (mvTask.getWork().getLoadTableWork() != null) {
          // Moving tables/partitions depend on the dependencyTask
          dependencyTask.addDependentTask(mvTask);
        } else {
          // Moving files depends on the parentTask (we still want the dependencyTask to depend
          // on the parentTask)
          parentTask.addDependentTask(mvTask);
        }
      } else {
        parentTask.addDependentTask(mvTask);
      }
    }
  }
Adds the dependencyTaskForMultiInsert in ctx as a dependent of parentTask. If mvTask is a
load table, and HIVE_MULTI_INSERT_ATOMIC_OUTPUTS is set, adds mvTask as a dependent of
dependencyTaskForMultiInsert in ctx, otherwise adds mvTask as a dependent of parentTask as
well.

@param mvTask
@param hconf
@param parentTask
@param dependencyTask
ql/src/java/org/apache/hadoop/hive/ql/optimizer/GenMapRedUtils.java