private Task<?> dropPartitionTask(Table table, Map<String, String> partSpec) throws SemanticException {
    Task<DDLWork> dropPtnTask = null;
    Map<Integer, List<ExprNodeGenericFuncDesc>> partSpecsExpr =
            ReplUtils.genPartSpecs(table, Collections.singletonList(partSpec));
    if (partSpecsExpr.size() > 0) {
      AlterTableDropPartitionDesc dropPtnDesc = new AlterTableDropPartitionDesc(HiveTableName.of(table),
          partSpecsExpr, true, event.replicationSpec());
      dropPtnTask = TaskFactory.get(
              new DDLWork(new HashSet<>(), new HashSet<>(), dropPtnDesc, true,
                      (new Path(context.dumpDirectory)).getParent().toString(), this.metricCollector), context.hiveConf
      );
    }
    return dropPtnTask;
  }
Since the table level location will be set by taking into account the base directory configuration
for external table, we don't have to do anything specific for partition location since it will always
be a child of the table level location.
Looks like replication does not handle a specific location provided for a partition and the partition
path will always be a child on target.
ql/src/java/org/apache/hadoop/hive/ql/exec/repl/bootstrap/load/table/LoadPartitions.java