@Override public Map<String, String> partition_name_to_spec(String part_name) throws TException { if (part_name.length() == 0) { return new HashMap<>(); } return Warehouse.makeSpecFromName(part_name); }
public static List<String> getPartValuesFromPartName(String partName) throws MetaException { LinkedHashMap<String, String> partSpec = Warehouse.makeSpecFromName(partName); List<String> values = new ArrayList<>(); values.addAll(partSpec.values()); return values; }
@Override public List<String> partition_name_to_vals(String part_name) throws TException { if (part_name.length() == 0) { return new ArrayList<>(); } LinkedHashMap<String, String> map = Warehouse.makeSpecFromName(part_name); List<String> part_vals = new ArrayList<>(); part_vals.addAll(map.values()); return part_vals; }
public static LinkedHashMap<String, String> makeSpecFromName(String name) throws MetaException { if (name == null || name.isEmpty()) { throw new MetaException("Partition name is invalid. " + name); } LinkedHashMap<String, String> partSpec = new LinkedHashMap<>(); makeSpecFromName(partSpec, new Path(name), null); return partSpec; }
private PartitionDesc generateDPFullPartSpec(DynamicPartitionCtx dpCtx, FileStatus[] status, TableDesc tblDesc, int i) { LinkedHashMap<String, String> fullPartSpec = new LinkedHashMap<>( dpCtx.getPartSpec()); // Require all the directories to be present with some values. if (!Warehouse.makeSpecFromName(fullPartSpec, status[i].getPath(), new HashSet<>(dpCtx.getPartSpec().keySet()))) { return null; } return new PartitionDesc(tblDesc, fullPartSpec); }
private PartitionDesc generateDPFullPartSpec(DynamicPartitionCtx dpCtx, FileStatus[] status, TableDesc tblDesc, int i) { LinkedHashMap<String, String> fullPartSpec = new LinkedHashMap<>(dpCtx.getPartSpec()); Warehouse.makeSpecFromName(fullPartSpec, status[i].getPath()); PartitionDesc pDesc = new PartitionDesc(tblDesc, fullPartSpec); return pDesc; }
private List<String> getPartValsFromName(Table t, String partName) throws MetaException, InvalidObjectException { Preconditions.checkArgument(t != null, "Table can not be null"); // Unescape the partition name LinkedHashMap<String, String> hm = Warehouse.makeSpecFromName(partName); List<String> partVals = new ArrayList<>(); for (FieldSchema field : t.getPartitionKeys()) { String key = field.getName(); String val = hm.get(key); if (val == null) { throw new InvalidObjectException("incomplete partition name - missing " + key); } partVals.add(val); } return partVals; }
private void msckAddPartitionsOneByOne(Hive db, Table table, Set<CheckResult.PartitionResult> partsNotInMs, List<String> repairOutput) { for (CheckResult.PartitionResult part : partsNotInMs) { try { db.createPartition(table, Warehouse.makeSpecFromName(part.getPartitionName())); repairOutput.add("Repair: Added partition to metastore " + table.getTableName() + ':' + part.getPartitionName()); } catch (Exception e) { LOG.warn("Repair error, could not add partition to metastore: ", e); } } }
if (!Warehouse.makeSpecFromName(fullPartSpec, partPath, new HashSet<String>(partSpec.keySet()))) { Utilities.FILE_OP_LOGGER.warn("Ignoring invalid DP directory {}", partPath); continue;
Warehouse.makeSpecFromName(fullPartSpec, partPath); fullPartSpecs.add(fullPartSpec);
LinkedHashMap<String, String> fullPartSpec = new LinkedHashMap<String, String>(); if (!customDynamicLocationUsed) { Warehouse.makeSpecFromName(fullPartSpec, st.getPath(), null); } else { HCatFileUtil.getPartKeyValuesForCustomLocation(fullPartSpec, jobInfo,
if (!Warehouse.makeSpecFromName(fullPartSpec, partPath, new HashSet<>(partSpec.keySet()))) { Utilities.FILE_OP_LOGGER.warn("Ignoring invalid DP directory " + partPath); } else {
Warehouse.makeSpecFromName(fullPartSpec, partPath); futures.add(pool.submit(new Callable<Void>() { @Override
for (CheckResult.PartitionResult part : partsNotInMs) { counter++; apd.addPartition(Warehouse.makeSpecFromName(part.getPartitionName()), null); repairOutput.add("Repair: Added partition to metastore " + msckDesc.getTableName() + ':' + part.getPartitionName()); apd.addPartition(Warehouse.makeSpecFromName(part.getPartitionName()), null); repairOutput.add("Repair: Added partition to metastore " + msckDesc.getTableName() + ':' + part.getPartitionName());
public static List<String> getPartValuesFromPartName(String partName) throws MetaException { LinkedHashMap<String, String> partSpec = Warehouse.makeSpecFromName(partName); List<String> values = new ArrayList<String>(); values.addAll(partSpec.values()); return values; }
/** * Escape partition name. * * @param partName partition name * @return Escaped partition name */ public static String escapePartitionName(final String partName) { final LinkedHashMap<String, String> partSpec = new LinkedHashMap<>(); Warehouse.makeSpecFromName(partSpec, new Path(partName)); return FileUtils.makePartName(new ArrayList<>(partSpec.keySet()), new ArrayList<>(partSpec.values())); }
public static LinkedHashMap<String, String> makeSpecFromName(String name) throws MetaException { if (name == null || name.isEmpty()) { throw new MetaException("Partition name is invalid. " + name); } LinkedHashMap<String, String> partSpec = new LinkedHashMap<>(); makeSpecFromName(partSpec, new Path(name), null); return partSpec; }
public static LinkedHashMap<String, String> makeSpecFromName(String name) throws MetaException { if (name == null || name.isEmpty()) { throw new MetaException("Partition name is invalid. " + name); } LinkedHashMap<String, String> partSpec = new LinkedHashMap<String, String>(); makeSpecFromName(partSpec, new Path(name)); return partSpec; }
private PartitionDesc generateDPFullPartSpec(DynamicPartitionCtx dpCtx, FileStatus[] status, TableDesc tblDesc, int i) { Map<String, String> fullPartSpec = new LinkedHashMap<String, String>( dpCtx.getPartSpec()); Warehouse.makeSpecFromName(fullPartSpec, status[i].getPath()); PartitionDesc pDesc = new PartitionDesc(tblDesc, (LinkedHashMap) fullPartSpec); return pDesc; }
private void msckAddPartitionsOneByOne(Hive db, Table table, List<CheckResult.PartitionResult> partsNotInMs, List<String> repairOutput) { for (CheckResult.PartitionResult part : partsNotInMs) { try { db.createPartition(table, Warehouse.makeSpecFromName(part.getPartitionName())); repairOutput.add("Repair: Added partition to metastore " + table.getTableName() + ':' + part.getPartitionName()); } catch (Exception e) { LOG.warn("Repair error, could not add partition to metastore: ", e); } } }