private static Path genPartPathFromTable(Table tbl, Map<String, String> partSpec,
      Path tblDataLocationPath) throws MetaException {
    Path partPath = new Path(tbl.getDataLocation(), Warehouse.makePartPath(partSpec));
    return new Path(tblDataLocationPath.toUri().getScheme(),
        tblDataLocationPath.toUri().getAuthority(), partPath.toUri().getPath());
  }
Move files before creating the partition since down stream processes
check for existence of partition in metadata before accessing the data.
If partition is created before data is moved, downstream waiting
processes might move forward with partial data
ql/src/java/org/apache/hadoop/hive/ql/metadata/Hive.java