@Override public String toString() { return "[" + begin.getDateString() + ", " + end.getDateString() + ")"; }
@Override public String toString() { return "[" + begin.getDateString() + ", " + end.getDateString() + ")"; }
@Override public String getName() { return getDateString(); }
@Override public String getName() { return getDateString(); }
@Override public Map<String, String> toProperties() { HashMap<String, String> ret = Maps.newHashMap(); ret.put("first", ""); ret.put("latest", ""); MetastoreUtil.addNameStrings(ret, "holes", holes); if (isEmpty()) { return ret; } ret.put("first", first.getDateString()); ret.put("latest", latest.getDateString()); return ret; }
@Override public Map<String, String> toProperties() { HashMap<String, String> ret = Maps.newHashMap(); ret.put("first", ""); ret.put("latest", ""); MetastoreUtil.addNameStrings(ret, "holes", holes); if (isEmpty()) { return ret; } ret.put("first", first.getDateString()); ret.put("latest", latest.getDateString()); return ret; }
/** update partition timeline cache for deletion of time partition */ public boolean updateForDeletion(String cubeTableName, String storageName, UpdatePeriod updatePeriod, Map<String, Date> timePartSpec) throws HiveException, LensException { // fail fast. All part cols mentioned in all partitions should exist. for (String partCol : timePartSpec.keySet()) { getAndFailFast(cubeTableName, storageName, updatePeriod, partCol); } boolean updated = false; for (Map.Entry<String, Date> entry : timePartSpec.entrySet()) { TimePartition part = TimePartition.of(updatePeriod, entry.getValue()); if (!partitionExistsByFilter(cubeTableName, storageName, updatePeriod, StorageConstants.getPartFilter(entry.getKey(), part.getDateString()))) { get(cubeTableName, storageName, updatePeriod, entry.getKey()).drop(part); updated = true; } } return updated; } }
/** update partition timeline cache for deletion of time partition */ public boolean updateForDeletion(String cubeTableName, String storageName, UpdatePeriod updatePeriod, Map<String, Date> timePartSpec) throws HiveException, LensException { // fail fast. All part cols mentioned in all partitions should exist. for (String partCol : timePartSpec.keySet()) { getAndFailFast(cubeTableName, storageName, updatePeriod, partCol); } boolean updated = false; for (Map.Entry<String, Date> entry : timePartSpec.entrySet()) { TimePartition part = TimePartition.of(updatePeriod, entry.getValue()); if (!partitionExistsByFilter(cubeTableName, storageName, updatePeriod, StorageConstants.getPartFilter(entry.getKey(), part.getDateString()))) { get(cubeTableName, storageName, updatePeriod, entry.getKey()).drop(part); updated = true; } } return updated; } }
String nowStr = nowPartition.getDateString(); String tenLaterStr = tenLater.getDateString(); assertEquals(TimePartitionRange.parseFrom(up, nowStr, tenLaterStr), range); assertEquals(TimePartitionRange.parseFrom(up, "[" + nowStr, tenLaterStr + ")"), range);