private Partition getPartitionByName(final String dbName, final String tblName, final String partName ) throws TException { final TableDto tableDto = getTableDto(dbName, tblName); return hiveConverters.metacatToHivePartition(getPartitionDtoByName(tableDto, partName), tableDto); }
private Partition getPartitionByName(final String dbName, final String tblName, final String partName ) throws TException { final TableDto tableDto = getTableDto(dbName, tblName); return hiveConverters.metacatToHivePartition(getPartitionDtoByName(tableDto, partName), tableDto); }
private List<Partition> getPartitionsByFilter(final String dbName, final String tblName, @Nullable final String filter, final short maxParts) { final String databaseName = normalizeIdentifier(dbName); final String tableName = normalizeIdentifier(tblName); final TableDto tableDto = v1.getTable(catalogName, databaseName, tableName, true, false, false); final Integer maxValues = maxParts > 0 ? Short.toUnsignedInt(maxParts) : null; final GetPartitionsRequestDto dto = new GetPartitionsRequestDto(filter, null, true, false); final List<PartitionDto> metacatPartitions = partV1.getPartitionsForRequest(catalogName, dbName, tblName, null, null, null, maxValues, false, dto); final List<Partition> result = Lists.newArrayListWithCapacity(metacatPartitions.size()); for (PartitionDto partition : metacatPartitions) { result.add(hiveConverters.metacatToHivePartition(partition, tableDto)); } return result; }
private List<Partition> getPartitionsByFilter(final String dbName, final String tblName, @Nullable final String filter, final short maxParts) { final String databaseName = normalizeIdentifier(dbName); final String tableName = normalizeIdentifier(tblName); final TableDto tableDto = v1.getTable(catalogName, databaseName, tableName, true, false, false); final Integer maxValues = maxParts > 0 ? Short.toUnsignedInt(maxParts) : null; final GetPartitionsRequestDto dto = new GetPartitionsRequestDto(filter, null, true, false); final List<PartitionDto> metacatPartitions = partV1.getPartitionsForRequest(catalogName, dbName, tblName, null, null, null, maxValues, false, dto); final List<Partition> result = Lists.newArrayListWithCapacity(metacatPartitions.size()); for (PartitionDto partition : metacatPartitions) { result.add(hiveConverters.metacatToHivePartition(partition, tableDto)); } return result; }
/** * {@inheritDoc} */ @Override public Partition get_partition(final String dbName, final String tblName, final List<String> partVals) throws TException { return requestWrapper("get_partition", new Object[]{dbName, tblName, partVals}, () -> { final TableDto tableDto = getTableDto(dbName, tblName); final String partName = hiveConverters.getNameFromPartVals(tableDto, partVals); return hiveConverters.metacatToHivePartition(getPartitionDtoByName(tableDto, partName), tableDto); }); }
/** * {@inheritDoc} */ @Override public List<Partition> get_partitions_by_names(final String dbName, final String tblName, final List<String> names) throws TException { return requestWrapper("get_partitions_by_names", new Object[]{dbName, tblName, names}, () -> { final String databaseName = normalizeIdentifier(dbName); final String tableName = normalizeIdentifier(tblName); final TableDto tableDto = v1.getTable(catalogName, databaseName, tableName, true, false, false); final GetPartitionsRequestDto dto = new GetPartitionsRequestDto(null, names, true, false); final List<PartitionDto> metacatPartitions = partV1.getPartitionsForRequest(catalogName, databaseName, tableName, null, null, null, null, false, dto); final List<Partition> result = Lists.newArrayListWithCapacity(metacatPartitions.size()); for (PartitionDto partition : metacatPartitions) { result.add(hiveConverters.metacatToHivePartition(partition, tableDto)); } return result; }); }
/** * {@inheritDoc} */ @Override public Partition get_partition(final String dbName, final String tblName, final List<String> partVals) throws TException { return requestWrapper("get_partition", new Object[]{dbName, tblName, partVals}, () -> { final TableDto tableDto = getTableDto(dbName, tblName); final String partName = hiveConverters.getNameFromPartVals(tableDto, partVals); return hiveConverters.metacatToHivePartition(getPartitionDtoByName(tableDto, partName), tableDto); }); }
/** * {@inheritDoc} */ @Override public List<Partition> get_partitions_by_names(final String dbName, final String tblName, final List<String> names) throws TException { return requestWrapper("get_partitions_by_names", new Object[]{dbName, tblName, names}, () -> { final String databaseName = normalizeIdentifier(dbName); final String tableName = normalizeIdentifier(tblName); final TableDto tableDto = v1.getTable(catalogName, databaseName, tableName, true, false, false); final GetPartitionsRequestDto dto = new GetPartitionsRequestDto(null, names, true, false); final List<PartitionDto> metacatPartitions = partV1.getPartitionsForRequest(catalogName, databaseName, tableName, null, null, null, null, false, dto); final List<Partition> result = Lists.newArrayListWithCapacity(metacatPartitions.size()); for (PartitionDto partition : metacatPartitions) { result.add(hiveConverters.metacatToHivePartition(partition, tableDto)); } return result; }); }
/** * {@inheritDoc} */ @Override public Partition append_partition_with_environment_context( final String dbName, final String tblName, final List<String> partVals, @Nullable final EnvironmentContext environmentContext ) throws TException { return requestWrapper("append_partition_by_name_with_environment_context", new Object[]{dbName, tblName, partVals}, () -> { final TableDto tableDto = getTableDto(dbName, tblName); final String partName = hiveConverters.getNameFromPartVals(tableDto, partVals); appendPartitionsCore(dbName, tblName, partName); return hiveConverters.metacatToHivePartition(getPartitionDtoByName(tableDto, partName), tableDto); }); }
/** * {@inheritDoc} */ @Override public Partition append_partition_with_environment_context( final String dbName, final String tblName, final List<String> partVals, @Nullable final EnvironmentContext environmentContext ) throws TException { return requestWrapper("append_partition_by_name_with_environment_context", new Object[]{dbName, tblName, partVals}, () -> { final TableDto tableDto = getTableDto(dbName, tblName); final String partName = hiveConverters.getNameFromPartVals(tableDto, partVals); appendPartitionsCore(dbName, tblName, partName); return hiveConverters.metacatToHivePartition(getPartitionDtoByName(tableDto, partName), tableDto); }); }
/** * {@inheritDoc} */ @Override public List<Partition> get_partitions_ps(final String dbName, final String tblName, final List<String> partVals, final short maxParts) throws TException { return requestWrapper("get_partitions_ps", new Object[]{dbName, tblName, partVals, maxParts}, () -> { final String databaseName = normalizeIdentifier(dbName); final String tableName = normalizeIdentifier(tblName); final TableDto tableDto = v1.getTable(catalogName, databaseName, tableName, true, false, false); final String partFilter = partition_values_to_partition_filter(tableDto, partVals); final Integer maxValues = maxParts > 0 ? Short.toUnsignedInt(maxParts) : null; final GetPartitionsRequestDto dto = new GetPartitionsRequestDto(partFilter, null, true, false); final List<PartitionDto> metacatPartitions = partV1.getPartitionsForRequest(catalogName, dbName, tblName, null, null, null, maxValues, false, dto); final List<Partition> result = Lists.newArrayListWithCapacity(metacatPartitions.size()); for (PartitionDto partition : metacatPartitions) { result.add(hiveConverters.metacatToHivePartition(partition, tableDto)); } return result; }); }
/** * {@inheritDoc} */ @Override public List<Partition> get_partitions_ps(final String dbName, final String tblName, final List<String> partVals, final short maxParts) throws TException { return requestWrapper("get_partitions_ps", new Object[]{dbName, tblName, partVals, maxParts}, () -> { final String databaseName = normalizeIdentifier(dbName); final String tableName = normalizeIdentifier(tblName); final TableDto tableDto = v1.getTable(catalogName, databaseName, tableName, true, false, false); final String partFilter = partition_values_to_partition_filter(tableDto, partVals); final Integer maxValues = maxParts > 0 ? Short.toUnsignedInt(maxParts) : null; final GetPartitionsRequestDto dto = new GetPartitionsRequestDto(partFilter, null, true, false); final List<PartitionDto> metacatPartitions = partV1.getPartitionsForRequest(catalogName, dbName, tblName, null, null, null, maxValues, false, dto); final List<Partition> result = Lists.newArrayListWithCapacity(metacatPartitions.size()); for (PartitionDto partition : metacatPartitions) { result.add(hiveConverters.metacatToHivePartition(partition, tableDto)); } return result; }); }
/** * {@inheritDoc} */ @Override public List<PartitionSpec> get_part_specs_by_filter(final String dbName, final String tblName, final String filter, final int maxParts) throws TException { //TODO: Handle the use case of grouping return requestWrapper("get_partitions_pspec", new Object[]{dbName, tblName, filter, maxParts}, () -> { final String databaseName = normalizeIdentifier(dbName); final String tableName = normalizeIdentifier(tblName); final TableDto tableDto = v1.getTable(catalogName, databaseName, tableName, true, false, false); final GetPartitionsRequestDto dto = new GetPartitionsRequestDto(filter, null, true, false); final List<PartitionDto> metacatPartitions = partV1.getPartitionsForRequest(catalogName, dbName, tblName, null, null, null, maxParts, false, dto); final List<Partition> partitions = Lists.newArrayListWithCapacity(metacatPartitions.size()); for (PartitionDto partition : metacatPartitions) { partitions.add(hiveConverters.metacatToHivePartition(partition, tableDto)); } final PartitionSpec pSpec = new PartitionSpec(); pSpec.setPartitionList(new PartitionListComposingSpec(partitions)); pSpec.setDbName(dbName); pSpec.setTableName(tblName); if (tableDto != null && tableDto.getSerde() != null) { pSpec.setRootPath(tableDto.getSerde().getUri()); } return Arrays.asList(pSpec); }); }
/** * {@inheritDoc} */ @Override public List<PartitionSpec> get_part_specs_by_filter(final String dbName, final String tblName, final String filter, final int maxParts) throws TException { //TODO: Handle the use case of grouping return requestWrapper("get_partitions_pspec", new Object[]{dbName, tblName, filter, maxParts}, () -> { final String databaseName = normalizeIdentifier(dbName); final String tableName = normalizeIdentifier(tblName); final TableDto tableDto = v1.getTable(catalogName, databaseName, tableName, true, false, false); final GetPartitionsRequestDto dto = new GetPartitionsRequestDto(filter, null, true, false); final List<PartitionDto> metacatPartitions = partV1.getPartitionsForRequest(catalogName, dbName, tblName, null, null, null, maxParts, false, dto); final List<Partition> partitions = Lists.newArrayListWithCapacity(metacatPartitions.size()); for (PartitionDto partition : metacatPartitions) { partitions.add(hiveConverters.metacatToHivePartition(partition, tableDto)); } final PartitionSpec pSpec = new PartitionSpec(); pSpec.setPartitionList(new PartitionListComposingSpec(partitions)); pSpec.setDbName(dbName); pSpec.setTableName(tblName); if (tableDto != null && tableDto.getSerde() != null) { pSpec.setRootPath(tableDto.getSerde().getUri()); } return Arrays.asList(pSpec); }); }