|
19 | 19 | import com.facebook.presto.spi.ConnectorPartitionResult;
|
20 | 20 | import com.facebook.presto.spi.Pageable;
|
21 | 21 | import com.facebook.presto.spi.SavePartitionResult;
|
| 22 | +import com.facebook.presto.spi.SchemaTableName; |
22 | 23 | import com.facebook.presto.spi.SchemaTablePartitionName;
|
23 | 24 | import com.facebook.presto.spi.Sort;
|
| 25 | +import com.facebook.presto.spi.TableNotFoundException; |
24 | 26 | import com.fasterxml.jackson.databind.node.ObjectNode;
|
25 | 27 | import com.google.common.base.Splitter;
|
26 | 28 | import com.google.common.collect.Lists;
|
@@ -184,7 +186,10 @@ public void delete(QualifiedName name, List<String> partitionIds) {
|
184 | 186 | TagList tags = BasicTagList.of("catalog", name.getCatalogName(), "database", name.getDatabaseName(), "table", name.getTableName());
|
185 | 187 | DynamicGauge.set(LogConstants.GaugeDeletePartitions.toString(), tags, partitionIds.size());
|
186 | 188 | Optional<TableHandle> tableHandle = tableService.getTableHandle(name);
|
187 |
| - if (tableHandle.isPresent() && !partitionIds.isEmpty()) { |
| 189 | + if( !tableHandle.isPresent()){ |
| 190 | + throw new TableNotFoundException(new SchemaTableName(name.getDatabaseName(), name.getTableName())); |
| 191 | + } |
| 192 | + if (!partitionIds.isEmpty()) { |
188 | 193 | ConnectorPartitionResult partitionResult = splitManager.getPartitions(tableHandle.get(), null, partitionIds, null, null, false);
|
189 | 194 | log.info("Deleting partitions with names {} for {}", partitionIds, name);
|
190 | 195 | splitManager.deletePartitions( tableHandle.get(), partitionIds);
|
|
0 commit comments