public JobConf pushProjectionsAndFilters(JobConf jobConf, Path path)
      throws IOException {
    updateMrWork(jobConf);  // TODO: refactor this in HIVE-6366
    final JobConf cloneJobConf = new JobConf(jobConf);
    final PartitionDesc part = HiveFileFormatUtils.getFromPathRecursively(
        pathToPartitionInfo, path, null, false, true);

    try {
      if ((part != null) && (part.getTableDesc() != null)) {
        Utilities.copyTableJobPropertiesToConf(part.getTableDesc(), cloneJobConf);
      }
    } catch (Exception e) {
      throw new IOException(e);
    }

    pushProjectionsAndFilters(cloneJobConf, path.toString(), path.toUri().getPath());
    return cloneJobConf;
  }
Sets the mapWork variable based on the current JobConf in order to get all partitions.

@param job
ql/src/java/org/apache/hadoop/hive/ql/io/parquet/ProjectionPusher.java