diff --git a/presto-delta/pom.xml b/presto-delta/pom.xml index da1965e03c041..f9202b0c86dcb 100644 --- a/presto-delta/pom.xml +++ b/presto-delta/pom.xml @@ -14,33 +14,61 @@ ${project.parent.basedir} true + 3.2.0 io.delta - delta-standalone_2.12 - 0.6.0 + delta-kernel-api + ${io.delta.delta-kernel-api.version} - org.scala-lang - scala-library + org.roaringbitmap + RoaringBitmap - com.fasterxml.jackson.module - jackson-module-scala_2.12 + org.slf4j + slf4j-api + + + + io.delta + delta-kernel-defaults + ${io.delta.delta-kernel-api.version} + com.fasterxml.jackson.core - jackson-core + jackson-databind - com.fasterxml.jackson.core - jackson-annotations + org.apache.hadoop + hadoop-client-api - com.fasterxml.jackson.core - jackson-databind + org.roringbitmap + RoaringBitmap + + + org.slf4j + slf4j-api + + + org.apache.parquet + parquet-hadoop + + + commons-logging + commons-logging + + + javax.xml.bind + jaxb-api + + + org.apache.hadoop + hadoop-client-runtime diff --git a/presto-delta/src/main/java/com/facebook/presto/delta/DeltaClient.java b/presto-delta/src/main/java/com/facebook/presto/delta/DeltaClient.java index 1dce78dda62af..bf8ff349c0d3e 100644 --- a/presto-delta/src/main/java/com/facebook/presto/delta/DeltaClient.java +++ b/presto-delta/src/main/java/com/facebook/presto/delta/DeltaClient.java @@ -19,28 +19,32 @@ import com.facebook.presto.spi.ConnectorSession; import com.facebook.presto.spi.PrestoException; import com.facebook.presto.spi.SchemaTableName; -import io.delta.standalone.DeltaLog; -import io.delta.standalone.Snapshot; -import io.delta.standalone.actions.AddFile; -import io.delta.standalone.actions.Metadata; -import io.delta.standalone.data.CloseableIterator; +import com.facebook.presto.spi.StandardErrorCode; +import io.delta.kernel.Snapshot; +import io.delta.kernel.Table; +import io.delta.kernel.data.FilteredColumnarBatch; +import io.delta.kernel.data.Row; +import io.delta.kernel.defaults.engine.DefaultEngine; +import io.delta.kernel.engine.Engine; +import io.delta.kernel.exceptions.TableNotFoundException; +import io.delta.kernel.internal.InternalScanFileUtils; +import io.delta.kernel.internal.SnapshotImpl; +import io.delta.kernel.utils.CloseableIterator; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; import javax.inject.Inject; import java.io.IOException; +import java.io.UncheckedIOException; import java.time.Instant; -import java.util.Arrays; +import java.util.HashMap; import java.util.List; +import java.util.Map; import java.util.Optional; -import java.util.Set; import java.util.stream.Collectors; -import static com.facebook.presto.delta.DeltaErrorCode.DELTA_UNSUPPORTED_DATA_FORMAT; import static com.facebook.presto.delta.DeltaTable.DataFormat.PARQUET; -import static com.facebook.presto.spi.StandardErrorCode.GENERIC_INTERNAL_ERROR; -import static com.facebook.presto.spi.StandardErrorCode.NOT_FOUND; import static com.google.common.base.Preconditions.checkArgument; import static java.lang.String.format; import static java.util.Locale.US; @@ -51,6 +55,7 @@ */ public class DeltaClient { + private static final String TABLE_NOT_FOUND_ERROR_TEMPLATE = "Delta table (%s.%s) no longer exists."; private final HdfsEnvironment hdfsEnvironment; @Inject @@ -70,45 +75,68 @@ public DeltaClient(HdfsEnvironment hdfsEnvironment) * @return If the table is found return {@link DeltaTable}. */ public Optional getTable( + DeltaConfig config, ConnectorSession session, SchemaTableName schemaTableName, String tableLocation, Optional snapshotId, Optional snapshotAsOfTimestampMillis) { - Optional deltaLog = loadDeltaTableLog(session, new Path(tableLocation), schemaTableName); - if (!deltaLog.isPresent()) { + Path location = new Path(tableLocation); + Optional deltaEngine = loadDeltaEngine(session, location, schemaTableName); + if (!deltaEngine.isPresent()) { return Optional.empty(); } + Table deltaTable = loadDeltaTable(location.toString(), deltaEngine.get()); + Snapshot snapshot = getSnapshot(deltaTable, deltaEngine.get(), schemaTableName, snapshotId, + snapshotAsOfTimestampMillis); + return Optional.of(new DeltaTable( + schemaTableName.getSchemaName(), + schemaTableName.getTableName(), + tableLocation, + Optional.of(snapshot.getVersion(deltaEngine.get())), // lock the snapshot version + getSchema(config, schemaTableName, deltaEngine.get(), snapshot))); + } + + private Snapshot getSnapshot( + Table deltaTable, + Engine deltaEngine, + SchemaTableName schemaTableName, + Optional snapshotId, + Optional snapshotAsOfTimestampMillis) + { // Fetch the snapshot info for given snapshot version. If no snapshot version is given, get the latest snapshot info. // Lock the snapshot version here and use it later in the rest of the query (such as fetching file list etc.). // If we don't lock the snapshot version here, the query may end up with schema from one version and data files from another // version when the underlying delta table is changing while the query is running. Snapshot snapshot; if (snapshotId.isPresent()) { - snapshot = getSnapshotById(deltaLog.get(), snapshotId.get(), schemaTableName); + snapshot = getSnapshotById(deltaTable, deltaEngine, snapshotId.get(), schemaTableName); } else if (snapshotAsOfTimestampMillis.isPresent()) { - snapshot = getSnapshotAsOfTimestamp(deltaLog.get(), snapshotAsOfTimestampMillis.get(), schemaTableName); + snapshot = getSnapshotAsOfTimestamp(deltaTable, deltaEngine, + snapshotAsOfTimestampMillis.get(), schemaTableName); } else { - snapshot = deltaLog.get().snapshot(); // get the latest snapshot + try { + snapshot = deltaTable.getLatestSnapshot(deltaEngine); // get the latest snapshot + } + catch (TableNotFoundException e) { + throw new PrestoException(StandardErrorCode.NOT_FOUND, + format("Could not move to latest snapshot on table '%s.%s'", schemaTableName.getSchemaName(), + schemaTableName.getTableName()), e); + } } - Metadata metadata = snapshot.getMetadata(); - String format = metadata.getFormat().getProvider(); - if (!PARQUET.name().equalsIgnoreCase(format)) { - throw new PrestoException(DELTA_UNSUPPORTED_DATA_FORMAT, - format("Delta table %s has unsupported data format: %s. Currently only Parquet data format is supported", schemaTableName, format)); + if (snapshot instanceof SnapshotImpl) { + String format = ((SnapshotImpl) snapshot).getMetadata().getFormat().getProvider(); + if (!PARQUET.name().equalsIgnoreCase(format)) { + throw new PrestoException(DeltaErrorCode.DELTA_UNSUPPORTED_DATA_FORMAT, + format("Delta table %s has unsupported data format: %s. Only the Parquet data format is supported", schemaTableName, format)); + } } - - return Optional.of(new DeltaTable( - schemaTableName.getSchemaName(), - schemaTableName.getTableName(), - tableLocation, - Optional.of(snapshot.getVersion()), // lock the snapshot version - getSchema(schemaTableName, metadata))); + return snapshot; } /** @@ -116,26 +144,36 @@ else if (snapshotAsOfTimestampMillis.isPresent()) { * * @return Closeable iterator of files. It is responsibility of the caller to close the iterator. */ - public CloseableIterator listFiles(ConnectorSession session, DeltaTable deltaTable) + public CloseableIterator listFiles(ConnectorSession session, DeltaTable deltaTable) { + requireNonNull(deltaTable, "deltaTable is null"); checkArgument(deltaTable.getSnapshotId().isPresent(), "Snapshot id is missing from the Delta table"); - Optional deltaLog = loadDeltaTableLog( - session, + Optional deltaEngine = loadDeltaEngine(session, new Path(deltaTable.getTableLocation()), new SchemaTableName(deltaTable.getSchemaName(), deltaTable.getTableName())); + if (!deltaEngine.isPresent()) { + throw new PrestoException(DeltaErrorCode.DELTA_ERROR_LOADING_METADATA, + format("Could not obtain Delta engine in '%s'", deltaTable.getTableLocation())); + } + Table sourceTable = loadDeltaTable(deltaTable.getTableLocation(), deltaEngine.get()); - if (!deltaLog.isPresent()) { - throw new PrestoException(NOT_FOUND, - format("Delta table (%s.%s) no longer exists.", deltaTable.getSchemaName(), deltaTable.getTableName())); + if (!deltaTable.getSnapshotId().isPresent()) { + throw new PrestoException(DeltaErrorCode.DELTA_ERROR_LOADING_SNAPSHOT, "Could not obtain snapshot id"); } - return deltaLog.get() - .getSnapshotForVersionAsOf(deltaTable.getSnapshotId().get()) - .scan() - .getFiles(); + try { + return sourceTable.getSnapshotAsOfVersion(deltaEngine.get(), + deltaTable.getSnapshotId().get()).getScanBuilder(deltaEngine.get()).build() + .getScanFiles(deltaEngine.get()); + } + catch (TableNotFoundException e) { + throw new PrestoException(StandardErrorCode.NOT_FOUND, + format("Delta table not found in '%s'", deltaTable.getTableLocation()), e); + } } - private Optional loadDeltaTableLog(ConnectorSession session, Path tableLocation, SchemaTableName schemaTableName) + private Optional loadDeltaEngine(ConnectorSession session, Path tableLocation, + SchemaTableName schemaTableName) { try { HdfsContext hdfsContext = new HdfsContext( @@ -148,63 +186,97 @@ private Optional loadDeltaTableLog(ConnectorSession session, Path tabl if (!fileSystem.isDirectory(tableLocation)) { return Optional.empty(); } - return Optional.of(DeltaLog.forTable( - hdfsEnvironment.getConfiguration(hdfsContext, tableLocation), - tableLocation)); + return Optional.of(DefaultEngine.create(fileSystem.getConf())); } catch (IOException ioException) { - throw new PrestoException(GENERIC_INTERNAL_ERROR, "Failed to load Delta table: " + ioException.getMessage(), ioException); + throw new PrestoException(DeltaErrorCode.DELTA_ERROR_LOADING_METADATA, + "Failed to load Delta table: " + ioException.getMessage(), ioException); } } - private static Snapshot getSnapshotById(DeltaLog deltaLog, long snapshotId, SchemaTableName schemaTableName) + private Table loadDeltaTable(String tableLocation, Engine deltaEngine) + { + return Table.forPath(deltaEngine, tableLocation); + } + + private static Snapshot getSnapshotById(Table deltaTable, Engine deltaEngine, long snapshotId, SchemaTableName schemaTableName) { try { - return deltaLog.getSnapshotForVersionAsOf(snapshotId); + return deltaTable.getSnapshotAsOfVersion(deltaEngine, snapshotId); } catch (IllegalArgumentException exception) { throw new PrestoException( - NOT_FOUND, + StandardErrorCode.NOT_FOUND, format("Snapshot version %d does not exist in Delta table '%s'.", snapshotId, schemaTableName), exception); } + catch (TableNotFoundException e) { + throw new PrestoException(StandardErrorCode.NOT_FOUND, + format(TABLE_NOT_FOUND_ERROR_TEMPLATE, schemaTableName.getSchemaName(), + schemaTableName.getTableName())); + } } - private static Snapshot getSnapshotAsOfTimestamp(DeltaLog deltaLog, long snapshotAsOfTimestampMillis, SchemaTableName schemaTableName) + private static Snapshot getSnapshotAsOfTimestamp(Table deltaTable, Engine deltaEngine, + long snapshotAsOfTimestampMillis, SchemaTableName schemaTableName) { try { - return deltaLog.getSnapshotForTimestampAsOf(snapshotAsOfTimestampMillis); + return deltaTable.getSnapshotAsOfTimestamp(deltaEngine, snapshotAsOfTimestampMillis); } catch (IllegalArgumentException exception) { throw new PrestoException( - NOT_FOUND, + StandardErrorCode.NOT_FOUND, format( "There is no snapshot exists in Delta table '%s' that is created on or before '%s'", schemaTableName, Instant.ofEpochMilli(snapshotAsOfTimestampMillis)), exception); } + catch (TableNotFoundException e) { + throw new PrestoException(StandardErrorCode.NOT_FOUND, + format(TABLE_NOT_FOUND_ERROR_TEMPLATE, schemaTableName.getSchemaName(), + schemaTableName.getTableName())); + } } /** * Utility method that returns the columns in given Delta metadata. Returned columns include regular and partition types. * Data type from Delta is mapped to appropriate Presto data type. */ - private static List getSchema(SchemaTableName tableName, Metadata metadata) + private static List getSchema(DeltaConfig config, SchemaTableName tableName, Engine deltaEngine, + Snapshot snapshot) { - Set partitionColumns = metadata.getPartitionColumns().stream() - .map(String::toLowerCase) - .collect(Collectors.toSet()); - - return Arrays.stream(metadata.getSchema().getFields()) - .map(field -> { - String columnName = field.getName().toLowerCase(US); - TypeSignature prestoType = DeltaTypeUtils.convertDeltaDataTypePrestoDataType(tableName, columnName, field.getDataType()); - return new DeltaColumn( - columnName, - prestoType, - field.isNullable(), - partitionColumns.contains(columnName)); - }).collect(Collectors.toList()); + try (CloseableIterator columnBatches = snapshot.getScanBuilder(deltaEngine).build() + .getScanFiles(deltaEngine)) { + Row row = null; + while (columnBatches.hasNext()) { + CloseableIterator rows = columnBatches.next().getRows(); + if (rows.hasNext()) { + row = rows.next(); + break; + } + } + Map partitionValues = row != null ? + InternalScanFileUtils.getPartitionValues(row) : new HashMap<>(0); + return snapshot.getSchema(deltaEngine).fields().stream() + .map(field -> { + String columnName = config.isCaseSensitivePartitionsEnabled() ? field.getName() : + field.getName().toLowerCase(US); + TypeSignature prestoType = DeltaTypeUtils.convertDeltaDataTypePrestoDataType(tableName, + columnName, field.getDataType()); + return new DeltaColumn( + columnName, + prestoType, + field.isNullable(), + partitionValues.containsKey(columnName)); + }).collect(Collectors.toList()); + } + catch (TableNotFoundException e) { + throw new PrestoException(StandardErrorCode.NOT_FOUND, + format(TABLE_NOT_FOUND_ERROR_TEMPLATE, tableName.getSchemaName(), tableName.getTableName())); + } + catch (IOException e) { + throw new UncheckedIOException("Could not close columnar batch row", e); + } } } diff --git a/presto-delta/src/main/java/com/facebook/presto/delta/DeltaConfig.java b/presto-delta/src/main/java/com/facebook/presto/delta/DeltaConfig.java index eae39e34619e3..2a87649c69ad5 100644 --- a/presto-delta/src/main/java/com/facebook/presto/delta/DeltaConfig.java +++ b/presto-delta/src/main/java/com/facebook/presto/delta/DeltaConfig.java @@ -21,6 +21,7 @@ public class DeltaConfig { private int maxSplitsBatchSize = 200; private boolean parquetDereferencePushdownEnabled = true; + private boolean caseSensitivePartitionsEnabled = true; @NotNull public boolean isParquetDereferencePushdownEnabled() @@ -46,4 +47,16 @@ public DeltaConfig setMaxSplitsBatchSize(int maxSplitsBatchSize) this.maxSplitsBatchSize = maxSplitsBatchSize; return this; } + + public boolean isCaseSensitivePartitionsEnabled() + { + return this.caseSensitivePartitionsEnabled; + } + + @Config("delta.case-sensitive-partitions-enabled") + public DeltaConfig setCaseSensitivePartitionsEnabled(boolean caseSensitivePartitionsEnabled) + { + this.caseSensitivePartitionsEnabled = caseSensitivePartitionsEnabled; + return this; + } } diff --git a/presto-delta/src/main/java/com/facebook/presto/delta/DeltaErrorCode.java b/presto-delta/src/main/java/com/facebook/presto/delta/DeltaErrorCode.java index ab759e2ef975f..fb1e9436ff62d 100644 --- a/presto-delta/src/main/java/com/facebook/presto/delta/DeltaErrorCode.java +++ b/presto-delta/src/main/java/com/facebook/presto/delta/DeltaErrorCode.java @@ -31,7 +31,9 @@ public enum DeltaErrorCode DELTA_CANNOT_OPEN_SPLIT(4, EXTERNAL), DELTA_MISSING_DATA(5, EXTERNAL), DELTA_READ_DATA_ERROR(6, INTERNAL_ERROR), - DELTA_INVALID_PARTITION_VALUE(7, EXTERNAL); + DELTA_INVALID_PARTITION_VALUE(7, EXTERNAL), + DELTA_ERROR_LOADING_METADATA(8, EXTERNAL), + DELTA_ERROR_LOADING_SNAPSHOT(9, EXTERNAL); private final ErrorCode errorCode; diff --git a/presto-delta/src/main/java/com/facebook/presto/delta/DeltaExpressionUtils.java b/presto-delta/src/main/java/com/facebook/presto/delta/DeltaExpressionUtils.java index 59f47e7d7d612..8ea44c160a591 100644 --- a/presto-delta/src/main/java/com/facebook/presto/delta/DeltaExpressionUtils.java +++ b/presto-delta/src/main/java/com/facebook/presto/delta/DeltaExpressionUtils.java @@ -13,6 +13,8 @@ */ package com.facebook.presto.delta; +import com.facebook.airlift.log.Logger; +import com.facebook.presto.common.GenericInternalException; import com.facebook.presto.common.predicate.Domain; import com.facebook.presto.common.predicate.TupleDomain; import com.facebook.presto.common.predicate.ValueSet; @@ -24,8 +26,10 @@ import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; import io.airlift.slice.Slice; -import io.delta.standalone.actions.AddFile; -import io.delta.standalone.data.CloseableIterator; +import io.delta.kernel.data.FilteredColumnarBatch; +import io.delta.kernel.data.Row; +import io.delta.kernel.internal.InternalScanFileUtils; +import io.delta.kernel.utils.CloseableIterator; import java.io.IOException; import java.sql.Date; @@ -34,12 +38,12 @@ import java.util.Map; import java.util.NoSuchElementException; import java.util.Optional; -import java.util.stream.Collectors; import static com.facebook.presto.delta.DeltaColumnHandle.ColumnType.PARTITION; import static com.facebook.presto.delta.DeltaErrorCode.DELTA_INVALID_PARTITION_VALUE; import static com.facebook.presto.delta.DeltaErrorCode.DELTA_UNSUPPORTED_COLUMN_TYPE; import static com.google.common.base.Preconditions.checkArgument; +import static com.google.common.collect.ImmutableList.toImmutableList; import static io.airlift.slice.Slices.utf8Slice; import static java.lang.Double.doubleToRawLongBits; import static java.lang.Double.parseDouble; @@ -50,6 +54,7 @@ public final class DeltaExpressionUtils { + private static final Logger logger = Logger.get(DeltaExpressionUtils.class); private DeltaExpressionUtils() { } @@ -64,18 +69,15 @@ public static List> splitPredicate( ImmutableMap.Builder regularColumnPredicates = ImmutableMap.builder(); Optional> domains = predicate.getDomains(); - if (domains.isPresent()) { - domains.get().entrySet().stream() - .forEach(domainPair -> { - DeltaColumnHandle columnHandle = (DeltaColumnHandle) domainPair.getKey(); - if (columnHandle.getColumnType() == PARTITION) { - partitionColumnPredicates.put(domainPair.getKey(), domainPair.getValue()); - } - else { - regularColumnPredicates.put(domainPair.getKey(), domainPair.getValue()); - } - }); - } + domains.ifPresent(columnHandleDomainMap -> columnHandleDomainMap.forEach((key, value) -> { + DeltaColumnHandle columnHandle = (DeltaColumnHandle) key; + if (columnHandle.getColumnType() == PARTITION) { + partitionColumnPredicates.put(key, value); + } + else { + regularColumnPredicates.put(key, value); + } + })); return ImmutableList.of( TupleDomain.withColumnDomains(partitionColumnPredicates.build()), @@ -83,90 +85,31 @@ public static List> splitPredicate( } /** - * Utility method that takes an iterator of {@link AddFile}s and a predicate and returns an iterator of {@link AddFile}s - * that satisfy the predicate (predicate evaluates to a deterministic NO) + * Utility method that takes an iterator of {@link FilteredColumnarBatch}s and a predicate and returns an iterator + * of {@link FilteredColumnarBatch}s that satisfy the predicate (predicate evaluates to a deterministic NO) */ - public static CloseableIterator iterateWithPartitionPruning( - CloseableIterator inputIterator, + public static CloseableIterator iterateWithPartitionPruning( + CloseableIterator inputIterator, TupleDomain predicate, TypeManager typeManager) { TupleDomain partitionPredicate = extractPartitionColumnsPredicate(predicate); if (partitionPredicate.isAll()) { - return inputIterator; // there is no partition filter, return the input iterator as is. + return new AllFilesIterator(inputIterator); } if (partitionPredicate.isNone()) { // nothing passes the partition predicate, return empty iterator - return new CloseableIterator() - { - @Override - public boolean hasNext() - { - return false; - } - - @Override - public AddFile next() - { - throw new NoSuchElementException(); - } - - @Override - public void close() - throws IOException - { - inputIterator.close(); - } - }; + return new NoneFilesIterator(inputIterator); } - List partitionColumns = - predicate.getColumnDomains().get().stream() - .filter(entry -> entry.getColumn().getColumnType() == PARTITION) - .map(entry -> entry.getColumn()) - .collect(Collectors.toList()); - - return new CloseableIterator() - { - private AddFile nextItem; - - @Override - public boolean hasNext() - { - if (nextItem != null) { - return true; - } - - while (inputIterator.hasNext()) { - AddFile nextFile = inputIterator.next(); - if (evaluatePartitionPredicate(partitionPredicate, partitionColumns, typeManager, nextFile)) { - nextItem = nextFile; - break; - } - } - - return nextItem != null; - } + Optional>> columnDomains = predicate.getColumnDomains(); + List partitionColumns = columnDomains.map(domains -> domains.stream() + .filter(entry -> entry.getColumn().getColumnType() == PARTITION) + .map(TupleDomain.ColumnDomain::getColumn) + .collect(toImmutableList())).orElse(ImmutableList.of()); - @Override - public AddFile next() - { - if (!hasNext()) { - throw new NoSuchElementException("there are no more files"); - } - AddFile toReturn = nextItem; - nextItem = null; - return toReturn; - } - - @Override - public void close() - throws IOException - { - inputIterator.close(); - } - }; + return new FilteredByPredicateIterator(inputIterator, partitionPredicate, partitionColumns, typeManager); } private static TupleDomain extractPartitionColumnsPredicate(TupleDomain predicate) @@ -180,76 +123,253 @@ private static TupleDomain extractPartitionColumnsPredicate(TupleDomain< }); } - private static boolean evaluatePartitionPredicate( - TupleDomain partitionPredicate, - List partitionColumns, - TypeManager typeManager, - AddFile addFile) + private static class AllFilesIterator + implements CloseableIterator { - checkArgument(!partitionPredicate.isNone(), "Expecting a predicate with at least one expression"); - for (DeltaColumnHandle partitionColumn : partitionColumns) { - String columnName = partitionColumn.getName(); - String partitionValue = addFile.getPartitionValues().get(columnName); - Domain domain = getDomain(partitionColumn, partitionValue, typeManager, addFile.getPath()); - Domain columnPredicate = partitionPredicate.getDomains().get().get(columnName); + private final CloseableIterator inputIterator; + private Row nextItem; + private boolean rowsRemaining; + private CloseableIterator row; - if (columnPredicate == null) { - continue; // there is no predicate on this column + public AllFilesIterator(CloseableIterator inputIterator) + { + this.inputIterator = inputIterator; + } + @Override + public boolean hasNext() + { + if (nextItem != null) { + return true; + } + + if (!rowsRemaining) { + if (!inputIterator.hasNext()) { + return false; + } + FilteredColumnarBatch nextFile = inputIterator.next(); + row = nextFile.getRows(); + } + Row nextRow; + rowsRemaining = false; + if (row.hasNext()) { + nextRow = row.next(); + nextItem = nextRow; + rowsRemaining = true; } + if (!rowsRemaining) { + try { + row.close(); + } + catch (IOException e) { + throw new GenericInternalException("Could not close row batch", e); + } + } + return nextItem != null; + } - if (columnPredicate.intersect(domain).isNone()) { - return false; + @Override + public Row next() + { + if (!hasNext()) { + throw new NoSuchElementException("There are no more files"); } + Row toReturn = nextItem; + nextItem = null; + return toReturn; + } + + @Override + public void close() + throws IOException + { + inputIterator.close(); + } + } + + private static class NoneFilesIterator + implements CloseableIterator + { + private final CloseableIterator inputIterator; + + NoneFilesIterator(CloseableIterator inputIterator) + { + this.inputIterator = inputIterator; + } + + @Override + public boolean hasNext() + { + return false; } - return true; + @Override + public Row next() + { + throw new NoSuchElementException(); + } + + @Override + public void close() + throws IOException + { + inputIterator.close(); + } } - private static Domain getDomain(DeltaColumnHandle columnHandle, String partitionValue, TypeManager typeManager, String filePath) + private static class FilteredByPredicateIterator + implements CloseableIterator { - Type type = typeManager.getType(columnHandle.getDataType()); - if (partitionValue == null) { - return Domain.onlyNull(type); - } - - String typeBase = columnHandle.getDataType().getBase(); - try { - switch (typeBase) { - case StandardTypes.TINYINT: - case StandardTypes.SMALLINT: - case StandardTypes.INTEGER: - case StandardTypes.BIGINT: - Long intValue = parseLong(partitionValue); - return Domain.create(ValueSet.of(type, intValue), false); - case StandardTypes.REAL: - Long realValue = (long) floatToRawIntBits(parseFloat(partitionValue)); - return Domain.create(ValueSet.of(type, realValue), false); - case StandardTypes.DOUBLE: - Long doubleValue = doubleToRawLongBits(parseDouble(partitionValue)); - return Domain.create(ValueSet.of(type, doubleValue), false); - case StandardTypes.VARCHAR: - case StandardTypes.VARBINARY: - Slice sliceValue = utf8Slice(partitionValue); - return Domain.create(ValueSet.of(type, sliceValue), false); - case StandardTypes.DATE: - Long dateValue = Date.valueOf(partitionValue).getTime(); // convert to millis - return Domain.create(ValueSet.of(type, dateValue), false); - case StandardTypes.TIMESTAMP: - Long timestampValue = Timestamp.valueOf(partitionValue).getTime(); // convert to millis - return Domain.create(ValueSet.of(type, timestampValue), false); - case StandardTypes.BOOLEAN: - Boolean booleanValue = Boolean.valueOf(partitionValue); - return Domain.create(ValueSet.of(type, booleanValue), false); - default: - throw new PrestoException(DELTA_UNSUPPORTED_COLUMN_TYPE, - format("Unsupported data type '%s' for partition column %s", columnHandle.getDataType(), columnHandle.getName())); - } - } - catch (IllegalArgumentException exception) { - throw new PrestoException(DELTA_INVALID_PARTITION_VALUE, - format("Can not parse partition value '%s' of type '%s' for partition column '%s' in file '%s'", - partitionValue, columnHandle.getDataType(), columnHandle.getName(), filePath), - exception); + private final CloseableIterator inputIterator; + private final TupleDomain partitionPredicate; + private final List partitionColumns; + private final TypeManager typeManager; + private Row nextItem; + private boolean rowsRemaining; + private CloseableIterator row; + + public FilteredByPredicateIterator(CloseableIterator inputIterator, + TupleDomain partitionPredicate, + List partitionColumns, TypeManager typeManager) + { + this.inputIterator = inputIterator; + this.partitionPredicate = partitionPredicate; + this.partitionColumns = partitionColumns; + this.typeManager = typeManager; + } + + @Override + public boolean hasNext() + { + if (nextItem != null) { + return true; + } + + if (!rowsRemaining) { + if (!inputIterator.hasNext()) { + return false; + } + FilteredColumnarBatch nextFile = inputIterator.next(); + row = nextFile.getRows(); + } + Row nextRow; + rowsRemaining = false; + while (row.hasNext()) { + nextRow = row.next(); + if (evaluatePartitionPredicate(partitionPredicate, partitionColumns, typeManager, + nextRow)) { + nextItem = nextRow; + rowsRemaining = true; + break; + } + } + if (!rowsRemaining) { + try { + row.close(); + } + catch (IOException e) { + throw new GenericInternalException("Cloud not close row batch", e); + } + } + return nextItem != null; + } + + @Override + public Row next() + { + if (!hasNext()) { + throw new NoSuchElementException("There are no more files"); + } + Row toReturn = nextItem; + nextItem = null; + return toReturn; + } + + @Override + public void close() + throws IOException + { + inputIterator.close(); + } + + private static boolean evaluatePartitionPredicate( + TupleDomain partitionPredicate, + List partitionColumns, + TypeManager typeManager, + Row row) + { + checkArgument(!partitionPredicate.isNone(), "Expecting a predicate with at least one expression"); + for (DeltaColumnHandle partitionColumn : partitionColumns) { + String columnName = partitionColumn.getName(); + String partitionValue = InternalScanFileUtils.getPartitionValues(row).get(columnName); + String filePath = InternalScanFileUtils.getAddFileStatus(row).getPath(); + logger.debug("Obtaining domain of file: " + filePath); + Domain domain = getDomain(partitionColumn, partitionValue, typeManager, filePath); + Optional> domains = partitionPredicate.getDomains(); + if (!domains.isPresent()) { + logger.debug("Domain is not present in file: " + filePath); + return false; + } + Domain columnPredicate = domains.get().get(columnName); + + if (columnPredicate == null) { + continue; // there is no predicate on this column + } + + if (columnPredicate.intersect(domain).isNone()) { + logger.debug("Empty set after domain intersection with file: " + filePath); + return false; + } + } + + return true; + } + + private static Domain getDomain(DeltaColumnHandle columnHandle, String partitionValue, TypeManager typeManager, String filePath) + { + Type type = typeManager.getType(columnHandle.getDataType()); + if (partitionValue == null) { + return Domain.onlyNull(type); + } + + String typeBase = columnHandle.getDataType().getBase(); + try { + switch (typeBase) { + case StandardTypes.TINYINT: + case StandardTypes.SMALLINT: + case StandardTypes.INTEGER: + case StandardTypes.BIGINT: + Long intValue = parseLong(partitionValue); + return Domain.create(ValueSet.of(type, intValue), false); + case StandardTypes.REAL: + Long realValue = (long) floatToRawIntBits(parseFloat(partitionValue)); + return Domain.create(ValueSet.of(type, realValue), false); + case StandardTypes.DOUBLE: + Long doubleValue = doubleToRawLongBits(parseDouble(partitionValue)); + return Domain.create(ValueSet.of(type, doubleValue), false); + case StandardTypes.VARCHAR: + case StandardTypes.VARBINARY: + Slice sliceValue = utf8Slice(partitionValue); + return Domain.create(ValueSet.of(type, sliceValue), false); + case StandardTypes.DATE: + Long dateValue = Date.valueOf(partitionValue).getTime(); // convert to millis + return Domain.create(ValueSet.of(type, dateValue), false); + case StandardTypes.TIMESTAMP: + Long timestampValue = Timestamp.valueOf(partitionValue).getTime(); // convert to millis + return Domain.create(ValueSet.of(type, timestampValue), false); + case StandardTypes.BOOLEAN: + Boolean booleanValue = Boolean.valueOf(partitionValue); + return Domain.create(ValueSet.of(type, booleanValue), false); + default: + throw new PrestoException(DELTA_UNSUPPORTED_COLUMN_TYPE, + format("Unsupported data type '%s' for partition column %s", columnHandle.getDataType(), columnHandle.getName())); + } + } + catch (IllegalArgumentException exception) { + throw new PrestoException(DELTA_INVALID_PARTITION_VALUE, + format("Can not parse partition value '%s' of type '%s' for partition column '%s' in file '%s'", + partitionValue, columnHandle.getDataType(), columnHandle.getName(), filePath), + exception); + } } } } diff --git a/presto-delta/src/main/java/com/facebook/presto/delta/DeltaMetadata.java b/presto-delta/src/main/java/com/facebook/presto/delta/DeltaMetadata.java index e5729a2d37bd3..bf72dc81494fc 100644 --- a/presto-delta/src/main/java/com/facebook/presto/delta/DeltaMetadata.java +++ b/presto-delta/src/main/java/com/facebook/presto/delta/DeltaMetadata.java @@ -219,6 +219,7 @@ public DeltaTableHandle getTableHandle(ConnectorSession session, SchemaTableName } Optional table = deltaClient.getTable( + config, session, schemaTableName, tableLocation, @@ -331,7 +332,7 @@ private ConnectorTableMetadata getTableMetadata(ConnectorSession session, Schema } List columnMetadata = tableHandle.getDeltaTable().getColumns().stream() - .map(column -> getColumnMetadata(column)) + .map(this::getColumnMetadata) .collect(Collectors.toList()); return new ConnectorTableMetadata(tableName, columnMetadata); diff --git a/presto-delta/src/main/java/com/facebook/presto/delta/DeltaSplitManager.java b/presto-delta/src/main/java/com/facebook/presto/delta/DeltaSplitManager.java index 68e41e93e808e..86e20b35a7a4a 100644 --- a/presto-delta/src/main/java/com/facebook/presto/delta/DeltaSplitManager.java +++ b/presto-delta/src/main/java/com/facebook/presto/delta/DeltaSplitManager.java @@ -22,15 +22,15 @@ import com.facebook.presto.spi.connector.ConnectorSplitManager; import com.facebook.presto.spi.connector.ConnectorTransactionHandle; import com.google.common.collect.ImmutableList; -import io.delta.standalone.actions.AddFile; -import io.delta.standalone.data.CloseableIterator; -import org.apache.hadoop.fs.Path; +import io.delta.kernel.data.Row; +import io.delta.kernel.internal.InternalScanFileUtils; +import io.delta.kernel.utils.CloseableIterator; +import io.delta.kernel.utils.FileStatus; import javax.inject.Inject; import java.io.IOException; import java.io.UncheckedIOException; -import java.net.URI; import java.util.Map; import java.util.Map.Entry; import java.util.concurrent.CompletableFuture; @@ -71,7 +71,7 @@ private class DeltaSplitSource implements ConnectorSplitSource { private final DeltaTable deltaTable; - private final CloseableIterator fileIterator; + private final CloseableIterator rowIterator; private final int maxBatchSize; private final ConnectorSession session; @@ -79,7 +79,7 @@ private class DeltaSplitSource { this.session = requireNonNull(session, "session is null"); this.deltaTable = deltaTableHandle.getTable().getDeltaTable(); - this.fileIterator = DeltaExpressionUtils.iterateWithPartitionPruning( + this.rowIterator = DeltaExpressionUtils.iterateWithPartitionPruning( deltaClient.listFiles(session, deltaTable), deltaTableHandle.getPredicate(), typeManager); @@ -91,30 +91,30 @@ public CompletableFuture getNextBatch(ConnectorPartitionHan { ImmutableList.Builder splitBuilder = ImmutableList.builder(); long currentSplitCount = 0; - while (fileIterator.hasNext() && currentSplitCount < maxSize && currentSplitCount < maxBatchSize) { - AddFile file = fileIterator.next(); - Path filePath = new Path(deltaTable.getTableLocation(), URI.create(file.getPath()).getPath()); + while (rowIterator.hasNext() && currentSplitCount < maxSize && currentSplitCount < maxBatchSize) { + Row row = rowIterator.next(); + FileStatus addFileStatus = InternalScanFileUtils.getAddFileStatus(row); splitBuilder.add(new DeltaSplit( connectorId, deltaTable.getSchemaName(), deltaTable.getTableName(), - filePath.toString(), + addFileStatus.getPath(), 0, /* start */ - file.getSize() /* split length - default is read the entire file in one split */, - file.getSize(), - removeNullPartitionValues(file.getPartitionValues()), + addFileStatus.getSize() /* split length - default is read the entire file in one split */, + addFileStatus.getSize(), + removeNullPartitionValues(InternalScanFileUtils.getPartitionValues(row)), getNodeSelectionStrategy(session))); currentSplitCount++; } - return completedFuture(new ConnectorSplitBatch(splitBuilder.build(), !fileIterator.hasNext())); + return completedFuture(new ConnectorSplitBatch(splitBuilder.build(), !rowIterator.hasNext())); } @Override public void close() { try { - fileIterator.close(); + rowIterator.close(); } catch (IOException e) { throw new UncheckedIOException(e); @@ -124,7 +124,7 @@ public void close() @Override public boolean isFinished() { - return !fileIterator.hasNext(); + return !rowIterator.hasNext(); } } diff --git a/presto-delta/src/main/java/com/facebook/presto/delta/DeltaTypeUtils.java b/presto-delta/src/main/java/com/facebook/presto/delta/DeltaTypeUtils.java index d139aa99f7e41..b8d63cbfcf57f 100644 --- a/presto-delta/src/main/java/com/facebook/presto/delta/DeltaTypeUtils.java +++ b/presto-delta/src/main/java/com/facebook/presto/delta/DeltaTypeUtils.java @@ -26,22 +26,22 @@ import com.google.common.collect.ImmutableList; import io.airlift.slice.Slice; import io.airlift.slice.SliceUtf8; -import io.delta.standalone.types.ArrayType; -import io.delta.standalone.types.BinaryType; -import io.delta.standalone.types.BooleanType; -import io.delta.standalone.types.ByteType; -import io.delta.standalone.types.DataType; -import io.delta.standalone.types.DateType; -import io.delta.standalone.types.DecimalType; -import io.delta.standalone.types.DoubleType; -import io.delta.standalone.types.FloatType; -import io.delta.standalone.types.IntegerType; -import io.delta.standalone.types.LongType; -import io.delta.standalone.types.MapType; -import io.delta.standalone.types.ShortType; -import io.delta.standalone.types.StringType; -import io.delta.standalone.types.StructType; -import io.delta.standalone.types.TimestampType; +import io.delta.kernel.types.ArrayType; +import io.delta.kernel.types.BinaryType; +import io.delta.kernel.types.BooleanType; +import io.delta.kernel.types.ByteType; +import io.delta.kernel.types.DataType; +import io.delta.kernel.types.DateType; +import io.delta.kernel.types.DecimalType; +import io.delta.kernel.types.DoubleType; +import io.delta.kernel.types.FloatType; +import io.delta.kernel.types.IntegerType; +import io.delta.kernel.types.LongType; +import io.delta.kernel.types.MapType; +import io.delta.kernel.types.ShortType; +import io.delta.kernel.types.StringType; +import io.delta.kernel.types.StructType; +import io.delta.kernel.types.TimestampType; import java.math.BigDecimal; import java.math.BigInteger; @@ -50,7 +50,6 @@ import java.time.ZoneOffset; import java.time.format.DateTimeFormatter; import java.time.format.DateTimeParseException; -import java.util.Arrays; import java.util.Locale; import java.util.Optional; @@ -95,7 +94,7 @@ private DeltaTypeUtils() * @param tableName Used in error messages when an unsupported data type is encountered. * @param columnName Used in error messages when an unsupported data type is encountered. * @param deltaType Data type to convert - * @return + * @return a {@link TypeSignature} containing the equivalent Presto type */ public static TypeSignature convertDeltaDataTypePrestoDataType(SchemaTableName tableName, String columnName, DataType deltaType) { @@ -104,7 +103,7 @@ public static TypeSignature convertDeltaDataTypePrestoDataType(SchemaTableName t if (deltaType instanceof StructType) { StructType deltaStructType = (StructType) deltaType; ImmutableList.Builder typeSignatureBuilder = ImmutableList.builder(); - Arrays.stream(deltaStructType.getFields()) + deltaStructType.fields() .forEach(field -> { String rowFieldName = field.getName().toLowerCase(Locale.US); TypeSignature rowFieldType = convertDeltaDataTypePrestoDataType( @@ -236,6 +235,6 @@ else if (deltaType instanceof TimestampType) { } throw new PrestoException(DELTA_UNSUPPORTED_COLUMN_TYPE, - format("Column '%s' in Delta table %s contains unsupported data type: %s", columnName, tableName, deltaType.getCatalogString())); + format("Column '%s' in Delta table %s contains unsupported data type: %s", columnName, tableName, deltaType.toString())); } } diff --git a/presto-delta/src/test/java/com/facebook/presto/delta/AbstractDeltaDistributedQueryTestBase.java b/presto-delta/src/test/java/com/facebook/presto/delta/AbstractDeltaDistributedQueryTestBase.java index a4452655af32b..ec77098e36312 100644 --- a/presto-delta/src/test/java/com/facebook/presto/delta/AbstractDeltaDistributedQueryTestBase.java +++ b/presto-delta/src/test/java/com/facebook/presto/delta/AbstractDeltaDistributedQueryTestBase.java @@ -20,8 +20,11 @@ import com.facebook.presto.tests.DistributedQueryRunner; import com.facebook.presto.tpch.TpchPlugin; import com.google.common.collect.ImmutableMap; +import org.testng.ITest; import org.testng.annotations.AfterClass; +import org.testng.annotations.DataProvider; +import java.nio.file.FileSystems; import java.nio.file.Path; import java.util.Map; @@ -31,17 +34,21 @@ import static java.util.Locale.US; public abstract class AbstractDeltaDistributedQueryTestBase - extends AbstractTestQueryFramework + extends AbstractTestQueryFramework implements ITest { public static final String DELTA_CATALOG = "delta"; public static final String HIVE_CATALOG = "hive"; public static final String PATH_SCHEMA = "$path$"; public static final String DELTA_SCHEMA = "deltaTables"; // Schema in Hive which has test Delta tables + protected static final String DELTA_V1 = "delta_v1"; + protected static final String DELTA_V3 = "delta_v3"; + + protected static final String[] DELTA_VERSIONS = {DELTA_V1, DELTA_V3}; /** * List of tables present in the test resources directory. */ - private static final String[] DELTA_TEST_TABLE_LIST = { + private static final String[] DELTA_TEST_TABLE_NAMES_LIST = { "data-reader-primitives", "data-reader-array-primitives", "data-reader-map", @@ -50,9 +57,46 @@ public abstract class AbstractDeltaDistributedQueryTestBase "time-travel-partition-changes-b", "deltatbl-partition-prune", "data-reader-partition-values", - "data-reader-nested-struct" + "data-reader-nested-struct", + "test-lowercase", + "test-partitions-lowercase", + "test-uppercase", + "test-partitions-uppercase" }; + /** + * List of tables present in the test resources directory. Each table is replicated in reader version 1 and 3 + */ + private static final String[] DELTA_TEST_TABLE_LIST = + new String[DELTA_VERSIONS.length * DELTA_TEST_TABLE_NAMES_LIST.length]; + static { + for (int i = 0; i < DELTA_VERSIONS.length; i++) { + for (int j = 0; j < DELTA_TEST_TABLE_NAMES_LIST.length; j++) { + DELTA_TEST_TABLE_LIST[i * DELTA_TEST_TABLE_NAMES_LIST.length + j] = DELTA_VERSIONS[i] + + FileSystems.getDefault().getSeparator() + DELTA_TEST_TABLE_NAMES_LIST[j]; + } + } + } + + private final ThreadLocal testName = new ThreadLocal<>(); + + @DataProvider + protected static Object[][] deltaReaderVersions() + { + return new Object[][] {{DELTA_V1}, {DELTA_V3}}; + } + + @Override + public String getTestName() + { + return this.testName.get(); + } + + protected static String getVersionPrefix(String version) + { + return version + FileSystems.getDefault().getSeparator(); + } + @Override protected QueryRunner createQueryRunner() throws Exception @@ -86,6 +130,11 @@ protected static String goldenTablePath(String tableName) return AbstractDeltaDistributedQueryTestBase.class.getClassLoader().getResource(tableName).toString(); } + protected static String goldenTablePathWithPrefix(String prefix, String tableName) + { + return goldenTablePath(prefix + FileSystems.getDefault().getSeparator() + tableName); + } + private static DistributedQueryRunner createDeltaQueryRunner(Map extraProperties) throws Exception { @@ -111,6 +160,7 @@ private static DistributedQueryRunner createDeltaQueryRunner(Map Map deltaProperties = ImmutableMap.builder() .put("hive.metastore", "file") .put("hive.metastore.catalog.dir", catalogDirectory.toFile().toURI().toString()) + .put("delta.case-sensitive-partitions-enabled", "false") .build(); queryRunner.createCatalog(DELTA_CATALOG, "delta", deltaProperties); diff --git a/presto-delta/src/test/java/com/facebook/presto/delta/TestDeltaConfig.java b/presto-delta/src/test/java/com/facebook/presto/delta/TestDeltaConfig.java index d1e3f8df0b6b5..3c1e971937200 100644 --- a/presto-delta/src/test/java/com/facebook/presto/delta/TestDeltaConfig.java +++ b/presto-delta/src/test/java/com/facebook/presto/delta/TestDeltaConfig.java @@ -26,7 +26,8 @@ public void testDefaults() { ConfigAssertions.assertRecordedDefaults(ConfigAssertions.recordDefaults(DeltaConfig.class) .setMaxSplitsBatchSize(200) - .setParquetDereferencePushdownEnabled(true)); + .setParquetDereferencePushdownEnabled(true) + .setCaseSensitivePartitionsEnabled(true)); } @Test @@ -35,11 +36,13 @@ public void testExplicitPropertyMappings() Map properties = new ImmutableMap.Builder() .put("delta.max-splits-batch-size", "400") .put("delta.parquet-dereference-pushdown-enabled", "false") + .put("delta.case-sensitive-partitions-enabled", "false") .build(); DeltaConfig expected = new DeltaConfig() .setMaxSplitsBatchSize(400) - .setParquetDereferencePushdownEnabled(false); + .setParquetDereferencePushdownEnabled(false) + .setCaseSensitivePartitionsEnabled(false); ConfigAssertions.assertFullMapping(properties, expected); } diff --git a/presto-delta/src/test/java/com/facebook/presto/delta/TestDeltaIntegration.java b/presto-delta/src/test/java/com/facebook/presto/delta/TestDeltaIntegration.java index f7e523b7cdeb2..156b6fd06ee61 100644 --- a/presto-delta/src/test/java/com/facebook/presto/delta/TestDeltaIntegration.java +++ b/presto-delta/src/test/java/com/facebook/presto/delta/TestDeltaIntegration.java @@ -29,25 +29,30 @@ /** * Integration tests for reading Delta tables. */ +@Test public class TestDeltaIntegration extends AbstractDeltaDistributedQueryTestBase { - @Test - public void readPrimitiveTypeData() + @Test(dataProvider = "deltaReaderVersions") + public void readPrimitiveTypeData(String version) { - // Test reading following primitive types from a Delta table (all ints, float, double, decimal, boolean, varchar, varbinary) + // Test reading following primitive types from a Delta table + // (all integers, float, double, decimal, boolean, varchar, varbinary) String testQuery = - format("SELECT * FROM \"%s\".\"%s\"", PATH_SCHEMA, goldenTablePath("data-reader-primitives")); + format("SELECT * FROM \"%s\".\"%s\"", PATH_SCHEMA, goldenTablePathWithPrefix(version, + "data-reader-primitives")); String expResultsQuery = getPrimitiveTypeTableData(); assertQuery(testQuery, expResultsQuery); } - @Test - public void readArrayTypeData() + @Test(dataProvider = "deltaReaderVersions") + public void readArrayTypeData(String version) { - // Test reading following array elements with type (all ints, float, double, decimal, boolean, varchar, varbinary) + // Test reading following array elements with type + // (all integers, float, double, decimal, boolean, varchar, varbinary) String testQuery = - format("SELECT * FROM \"%s\".\"%s\"", PATH_SCHEMA, goldenTablePath("data-reader-array-primitives")); + format("SELECT * FROM \"%s\".\"%s\"", PATH_SCHEMA, goldenTablePathWithPrefix(version, + "data-reader-array-primitives")); // Create query for the expected results. List expRows = new ArrayList<>(); @@ -69,12 +74,13 @@ public void readArrayTypeData() assertQuery(testQuery, expResultsQuery); } - @Test - public void readMapTypeData() + @Test(dataProvider = "deltaReaderVersions") + public void readMapTypeData(String version) { // Test reading MAP data type columns from Delta table String testQuery = - format("SELECT map_keys(a), map_values(e) FROM \"%s\".\"%s\"", PATH_SCHEMA, goldenTablePath("data-reader-map")); + format("SELECT map_keys(a), map_values(e) FROM \"%s\".\"%s\"", PATH_SCHEMA, + goldenTablePathWithPrefix(version, "data-reader-map")); List expRows = new ArrayList<>(); for (int i = 0; i < 10; i++) { @@ -87,17 +93,19 @@ public void readMapTypeData() assertQuery(testQuery, expResultsQuery); } - @Test - public void readTableRegisteredInHMS() + @Test(dataProvider = "deltaReaderVersions") + public void readTableRegisteredInHMS(String version) { String expResultsQuery = getPrimitiveTypeTableData(); - assertQuery("SELECT * FROM \"data-reader-primitives\"", expResultsQuery); + assertQuery("SELECT * FROM \"" + getVersionPrefix(version) + + "data-reader-primitives\"", expResultsQuery); } - @Test - public void readSpecificSnapshotVersion() + @Test(dataProvider = "deltaReaderVersions") + public void readSpecificSnapshotVersion(String version) { - String testQueryTemplate = "SELECT * FROM \"snapshot-data3@%s\" WHERE col1 = 0"; + String testQueryTemplate = "SELECT * FROM \"" + getVersionPrefix(version) + + "snapshot-data3@%s\" WHERE col1 = 0"; // read snapshot version 2 String testQueryV2 = format(testQueryTemplate, "v2"); @@ -110,12 +118,13 @@ public void readSpecificSnapshotVersion() assertQuery(testQueryV3, expResultsQueryV3); } - @Test - public void readSpecificSnapshotAtGivenTimestamp() + @Test(dataProvider = "deltaReaderVersions") + public void readSpecificSnapshotAtGivenTimestamp(String version) throws Exception { String deltaTable = "snapshot-data3"; - String testQueryTemplate = "SELECT * FROM \"snapshot-data3@%s\" WHERE col1 = 0"; + String testQueryTemplate = "SELECT * FROM \"" + getVersionPrefix(version) + + "snapshot-data3@%s\" WHERE col1 = 0"; // Delta library looks at the last modification time of the checkpoint and commit files // to figure out when the snapshot is created. In the tests, as the test files are copied @@ -123,7 +132,7 @@ public void readSpecificSnapshotAtGivenTimestamp() // the snapshot is created. In order to test reading the snapshot version for a given timestamp, // manually update the modification time of the commit and checkpoint files. // 1637274601000L millis = 2021-11-18 10:30:01 - String deltaTableLocation = goldenTablePath(deltaTable); + String deltaTableLocation = goldenTablePathWithPrefix(version, deltaTable); setCommitFileModificationTime(deltaTableLocation, 0, 1637231401000L); setCommitFileModificationTime(deltaTableLocation, 1, 1637231402000L); setCommitFileModificationTime(deltaTableLocation, 2, 1637231405000L); @@ -133,8 +142,7 @@ public void readSpecificSnapshotAtGivenTimestamp() String testQueryTs1 = format(testQueryTemplate, "t2020-10-27 02:50:00"); assertQueryFails( testQueryTs1, - "There is no snapshot exists in Delta table 'deltatables.snapshot-data3@t2020-10-27 02:50:00' " + - "that is created on or before '2020-10-27T02:50:00Z'"); + ".*The provided timestamp 1603767000000 ms \\(2020-10-27T02:50:00Z\\) is before the earliest available version 0\\. Please use a timestamp greater than or equal to 1637231401000 ms \\(2021-11-18T10:30:01Z\\)\\."); // read snapshot as of 2021-11-18 10:30:02 - this should read the data from commit id 1. String testQueryTs2 = format(testQueryTemplate, "t2021-11-18 10:30:02"); @@ -147,20 +155,23 @@ public void readSpecificSnapshotAtGivenTimestamp() assertQuery(testQueryTs3, expResultsQueryTs3); } - @Test(enabled = false) // Enable once the bug in Delta library is fixed - public void readCheckpointedDeltaTable() + @Test(enabled = false, dataProvider = "deltaReaderVersions") // Enable once the bug in Delta library is fixed + public void readCheckpointedDeltaTable(String version) { // Delta table commits are periodically checkpointed into a parquet file. // Test Delta connector is able to read the checkpointed commits in a parquet file. // Test table has commit files (0-10) deleted. So it has to rely on reading the Parquet file // to fetch the files latest commit (i.e > 10). - String testQueryTemplate = "SELECT * FROM \"checkpointed-delta-table%s\" WHERE col1 in (0, 10, 15)"; + String testQueryTemplate = "SELECT * FROM \"" + getVersionPrefix(version) + + "checkpointed-delta-table%s\" WHERE col1 in (0, 10, 15)"; // read snapshot version 3 - expect can't time travel error String testQueryV3 = format(testQueryTemplate, "@v3"); assertQueryFails( testQueryV3, - "Can not find snapshot \\(3\\) in Delta table 'deltatables.checkpointed-delta-table\\@v3': No reproducible commits found at .*"); + "Can not find snapshot \\(3\\) in Delta table 'deltatables." + + getVersionPrefix(version) + + "checkpointed-delta-table\\@v3': No reproducible commits found at .*"); // read latest data String testQueryLatest = format(testQueryTemplate, ""); @@ -173,23 +184,26 @@ public void readCheckpointedDeltaTable() assertQuery(testQueryV13, expResultsQueryV13); } - @Test - public void readPartitionedTable() + @Test(dataProvider = "deltaReaderVersions") + public void readPartitionedTable(String version) { - String testQuery1 = "SELECT * FROM \"time-travel-partition-changes-b\" WHERE id in (10, 15, 12, 13)"; + String testQuery1 = "SELECT * FROM \"" + getVersionPrefix(version) + + "time-travel-partition-changes-b\" WHERE id in (10, 15, 12, 13)"; String expResultsQuery1 = "SELECT * FROM VALUES(10, 0),(15, 1),(12, 0),(13, 1)"; assertQuery(testQuery1, expResultsQuery1); // reorder the columns in output and query the partitioned table - String testQuery2 = "SELECT part2, id FROM \"time-travel-partition-changes-b\" WHERE id in (16, 14, 19)"; + String testQuery2 = "SELECT part2, id FROM \"" + getVersionPrefix(version) + + "time-travel-partition-changes-b\" WHERE id in (16, 14, 19)"; String expResultsQuery2 = "SELECT * FROM VALUES(0, 16),(0, 14),(1, 19)"; assertQuery(testQuery2, expResultsQuery2); } - @Test - public void readPartitionedTableAllDataTypes() + @Test(dataProvider = "deltaReaderVersions") + public void readPartitionedTableAllDataTypes(String version) { - String testQuery = "SELECT * FROM \"data-reader-partition-values\""; + String testQuery = "SELECT * FROM \"" + getVersionPrefix(version) + + "data-reader-partition-values\""; String expResultsQuery = "SELECT * FROM VALUES" + "( 0," + " cast(0 as bigint)," + diff --git a/presto-delta/src/test/java/com/facebook/presto/delta/TestDeltaScanOptimizations.java b/presto-delta/src/test/java/com/facebook/presto/delta/TestDeltaScanOptimizations.java index 2816670f3146f..530c8203679e5 100644 --- a/presto-delta/src/test/java/com/facebook/presto/delta/TestDeltaScanOptimizations.java +++ b/presto-delta/src/test/java/com/facebook/presto/delta/TestDeltaScanOptimizations.java @@ -54,10 +54,10 @@ public class TestDeltaScanOptimizations extends AbstractDeltaDistributedQueryTestBase { - @Test - public void filterOnRegularColumn() + @Test(dataProvider = "deltaReaderVersions") + public void filterOnRegularColumn(String version) { - String tableName = "data-reader-primitives"; + String tableName = getVersionPrefix(version) + "data-reader-primitives"; String testQuery = format("SELECT as_int, as_string FROM \"%s\" WHERE as_int = 1", tableName); String expResultsQuery = "SELECT 1, cast('1' as varchar)"; @@ -69,10 +69,10 @@ public void filterOnRegularColumn() Collections.emptyMap()); } - @Test - public void filterOnPartitionColumn() + @Test(dataProvider = "deltaReaderVersions") + public void filterOnPartitionColumn(String version) { - String tableName = "deltatbl-partition-prune"; + String tableName = getVersionPrefix(version) + "deltatbl-partition-prune"; String testQuery = format("SELECT date, name, city, cnt FROM \"%s\" WHERE city in ('sh', 'sz')", tableName); String expResultsQuery = "SELECT * FROM VALUES('20180512', 'Jay', 'sh', 4),('20181212', 'Linda', 'sz', 8)"; @@ -84,12 +84,13 @@ public void filterOnPartitionColumn() ImmutableMap.of("city", multipleValues(VARCHAR, ImmutableList.of(utf8Slice("sh"), utf8Slice("sz"))))); } - @Test - public void filterOnMultiplePartitionColumns() + @Test(dataProvider = "deltaReaderVersions") + public void filterOnMultiplePartitionColumns(String version) { - String tableName = "deltatbl-partition-prune"; + String tableName = getVersionPrefix(version) + "deltatbl-partition-prune"; String testQuery = - format("SELECT date, name, city, cnt FROM \"%s\" WHERE city in ('sh', 'sz') AND \"date\" = '20180512'", tableName); + format("SELECT date, name, city, cnt FROM \"%s\" WHERE city in ('sh', 'sz') AND \"date\" = '20180512'", + tableName); String expResultsQuery = "SELECT * FROM VALUES('20180512', 'Jay', 'sh', 4)"; assertDeltaQueryOptimized( @@ -104,11 +105,12 @@ public void filterOnMultiplePartitionColumns() "date", singleValue(VARCHAR, utf8Slice("20180512")))); } - @Test - public void filterOnPartitionColumnAndRegularColumns() + @Test(dataProvider = "deltaReaderVersions") + public void filterOnPartitionColumnAndRegularColumns(String version) { - String tableName = "deltatbl-partition-prune"; - String testQuery = format("SELECT date, name, city, cnt FROM \"%s\" WHERE city in ('sh', 'sz') AND name = 'Linda'", tableName); + String tableName = getVersionPrefix(version) + "deltatbl-partition-prune"; + String testQuery = format("SELECT date, name, city, cnt FROM \"%s\" WHERE city in ('sh', 'sz') AND name = 'Linda'", + tableName); String expResultsQuery = "SELECT * FROM VALUES('20181212', 'Linda', 'sz', 8)"; assertDeltaQueryOptimized( @@ -121,12 +123,13 @@ public void filterOnPartitionColumnAndRegularColumns() ImmutableMap.of("city", multipleValues(VARCHAR, ImmutableList.of(utf8Slice("sh"), utf8Slice("sz"))))); } - @Test - public void nullPartitionFilter() + @Test(dataProvider = "deltaReaderVersions") + public void nullPartitionFilter(String version) { - String tableName = "data-reader-partition-values"; + String tableName = getVersionPrefix(version) + "data-reader-partition-values"; String testQuery = - format("SELECT value, as_boolean FROM \"%s\" WHERE as_int is null and value is not null", tableName); + format("SELECT value, as_boolean FROM \"%s\" WHERE as_int is null and value is not null", + tableName); String expResultsQuery = "SELECT * FROM VALUES('2', null)"; assertDeltaQueryOptimized( @@ -139,11 +142,12 @@ public void nullPartitionFilter() ImmutableMap.of("as_int", onlyNull(INTEGER))); } - @Test - public void notNullPartitionFilter() + @Test(dataProvider = "deltaReaderVersions") + public void notNullPartitionFilter(String version) { - String tableName = "data-reader-partition-values"; - String testQuery = format("SELECT value, as_boolean FROM \"%s\" WHERE as_int is not null and value = '1'", tableName); + String tableName = getVersionPrefix(version) + "data-reader-partition-values"; + String testQuery = format("SELECT value, as_boolean FROM \"%s\" WHERE as_int is not null and value = '1'", + tableName); String expResultsQuery = "SELECT * FROM VALUES('1', false)"; assertDeltaQueryOptimized( @@ -156,11 +160,12 @@ public void notNullPartitionFilter() ImmutableMap.of("as_int", notNull(INTEGER))); } - @Test - public void nestedColumnFilter() + @Test(dataProvider = "deltaReaderVersions") + public void nestedColumnFilter(String version) { - String tableName = "data-reader-nested-struct"; - String testQuery = format("SELECT a.aa, a.ac.aca FROM \"%s\" WHERE a.aa in ('8', '9') AND a.ac.aca > 6", tableName); + String tableName = getVersionPrefix(version) + "data-reader-nested-struct"; + String testQuery = format("SELECT a.aa, a.ac.aca FROM \"%s\" WHERE a.aa in ('8', '9') AND a.ac.aca > 6", + tableName); String expResultsQuery = "SELECT * FROM VALUES('8', 8),('9', 9)"; assertDeltaQueryOptimized( @@ -184,6 +189,9 @@ private void assertDeltaQueryOptimized( Map expectedConstraint, Map expectedEnforcedConstraint) { + // make sure to check the query output before the query plan + assertQuery(testQuery, expResultsQuery); + // verify the plan contains filter pushed down into scan appropriately assertPlan(withDereferencePushdownEnabled(), testQuery, @@ -191,8 +199,6 @@ private void assertDeltaQueryOptimized( tableName, expectedConstraint, expectedEnforcedConstraint))); - - assertQuery(testQuery, expResultsQuery); } /** diff --git a/presto-delta/src/test/java/com/facebook/presto/delta/TestUppercasePartitionColumns.java b/presto-delta/src/test/java/com/facebook/presto/delta/TestUppercasePartitionColumns.java new file mode 100644 index 0000000000000..02fe5c36aacd5 --- /dev/null +++ b/presto-delta/src/test/java/com/facebook/presto/delta/TestUppercasePartitionColumns.java @@ -0,0 +1,133 @@ +/* + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.facebook.presto.delta; + +import com.facebook.presto.Session; +import com.facebook.presto.common.type.TimeZoneKey; +import com.facebook.presto.hive.HivePlugin; +import com.facebook.presto.testing.MaterializedResult; +import com.facebook.presto.testing.QueryRunner; +import com.facebook.presto.tests.DistributedQueryRunner; +import com.facebook.presto.tpch.TpchPlugin; +import com.google.common.collect.ImmutableMap; +import org.testng.annotations.Test; + +import java.nio.file.FileSystems; +import java.nio.file.Path; +import java.util.Map; + +import static com.facebook.presto.testing.TestingSession.testSessionBuilder; +import static java.lang.String.format; +import static java.util.Locale.US; +import static org.testng.Assert.assertEquals; + +public class TestUppercasePartitionColumns + extends AbstractDeltaDistributedQueryTestBase +{ + private static final String[] DELTA_TEST_TABLE_NAMES_LIST = { + "test-lowercase", + "test-uppercase", + "test-partitions-lowercase", + "test-partitions-uppercase" + }; + + private static final String[] DELTA_TEST_TABLE_LIST = new String[DELTA_TEST_TABLE_NAMES_LIST.length * + DELTA_VERSIONS.length]; + static { + for (int i = 0; i < DELTA_VERSIONS.length; i++) { + for (int j = 0; j < DELTA_TEST_TABLE_NAMES_LIST.length; j++) { + DELTA_TEST_TABLE_LIST[i * DELTA_TEST_TABLE_NAMES_LIST.length + j] = DELTA_VERSIONS[i] + + FileSystems.getDefault().getSeparator() + DELTA_TEST_TABLE_NAMES_LIST[j]; + } + } + } + + @Override + protected QueryRunner createQueryRunner() + throws Exception + { + return createDeltaQueryRunner(ImmutableMap.of( + "experimental.pushdown-subfields-enabled", "true", + "experimental.pushdown-dereference-enabled", "true")); + } + + private static DistributedQueryRunner createDeltaQueryRunner(Map extraProperties) + throws Exception + { + Session session = testSessionBuilder() + .setCatalog(DELTA_CATALOG) + .setSchema(DELTA_SCHEMA.toLowerCase(US)) + .setTimeZoneKey(TimeZoneKey.getTimeZoneKey("Europe/Madrid")) + .build(); + + DistributedQueryRunner queryRunner = DistributedQueryRunner.builder(session) + .setExtraProperties(extraProperties) + .build(); + + // Install the TPCH plugin for test data (not in Delta format) + queryRunner.installPlugin(new TpchPlugin()); + queryRunner.createCatalog("tpch", "tpch"); + + Path dataDirectory = queryRunner.getCoordinator().getDataDirectory().resolve("delta_metadata"); + Path catalogDirectory = dataDirectory.getParent().resolve("catalog"); + + // Install a Delta connector catalog + queryRunner.installPlugin(new DeltaPlugin()); + Map deltaProperties = ImmutableMap.builder() + .put("hive.metastore", "file") + .put("hive.metastore.catalog.dir", catalogDirectory.toFile().toURI().toString()) + .put("delta.case-sensitive-partitions-enabled", "true") + .build(); + queryRunner.createCatalog(DELTA_CATALOG, "delta", deltaProperties); + + // Install a Hive connector catalog that uses the same metastore as Delta + // This catalog will be used to create tables in metastore as the Delta connector doesn't + // support creating tables yet. + queryRunner.installPlugin(new HivePlugin("hive")); + Map hiveProperties = ImmutableMap.builder() + .put("hive.metastore", "file") + .put("hive.metastore.catalog.dir", catalogDirectory.toFile().toURI().toString()) + .put("hive.allow-drop-table", "true") + .put("hive.security", "legacy") + .build(); + queryRunner.createCatalog(HIVE_CATALOG, "hive", hiveProperties); + queryRunner.execute(format("CREATE SCHEMA %s.%s", HIVE_CATALOG, DELTA_SCHEMA)); + + return queryRunner; + } + + @Test(dataProvider = "deltaReaderVersions") + public void readDeltaTableWithUpperCaseRegularColumnTest(String version) + { + String controlTableQuery = format("select * from \"%s\".\"%s\" order by id asc", + PATH_SCHEMA, goldenTablePathWithPrefix(version, "test-lowercase")); + String testTableQuery = format("select * from \"%s\".\"%s\" order by id asc", + PATH_SCHEMA, goldenTablePathWithPrefix(version, "test-uppercase")); + MaterializedResult expectedResult = getQueryRunner().execute(controlTableQuery); + MaterializedResult testResult = getQueryRunner().execute(testTableQuery); + assertEquals(testResult.getMaterializedRows(), expectedResult.getMaterializedRows()); + } + + @Test(dataProvider = "deltaReaderVersions") + public void readDeltaTableWithUpperCasePartitionValuesTest(String version) + { + String controlTableQuery = format("select * from \"%s\".\"%s\" order by id asc", + PATH_SCHEMA, goldenTablePathWithPrefix(version, "test-partitions-lowercase")); + String testTableQuery = format("select * from \"%s\".\"%s\" order by id asc", PATH_SCHEMA, + goldenTablePathWithPrefix(version, "test-partitions-uppercase")); + MaterializedResult expectedResult = getQueryRunner().execute(controlTableQuery); + MaterializedResult testResult = getQueryRunner().execute(testTableQuery); + assertEquals(testResult.getMaterializedRows(), expectedResult.getMaterializedRows()); + } +} diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-106da899-cbd5-491f-b560-60792edbe807-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-106da899-cbd5-491f-b560-60792edbe807-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-106da899-cbd5-491f-b560-60792edbe807-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-106da899-cbd5-491f-b560-60792edbe807-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-12ef2b67-494f-4eff-8e56-2431d0adf4bb-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-12ef2b67-494f-4eff-8e56-2431d0adf4bb-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-12ef2b67-494f-4eff-8e56-2431d0adf4bb-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-12ef2b67-494f-4eff-8e56-2431d0adf4bb-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-197ae400-931d-4eb2-8059-a4688c2d59a9-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-197ae400-931d-4eb2-8059-a4688c2d59a9-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-197ae400-931d-4eb2-8059-a4688c2d59a9-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-197ae400-931d-4eb2-8059-a4688c2d59a9-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-27b57b04-e80f-48b2-9064-c459e9d26a87-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-27b57b04-e80f-48b2-9064-c459e9d26a87-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-27b57b04-e80f-48b2-9064-c459e9d26a87-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-27b57b04-e80f-48b2-9064-c459e9d26a87-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-2e12af63-21db-42d7-9bda-766b1255e6f6-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-2e12af63-21db-42d7-9bda-766b1255e6f6-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-2e12af63-21db-42d7-9bda-766b1255e6f6-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-2e12af63-21db-42d7-9bda-766b1255e6f6-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-3a090e55-ad26-4e2e-8991-5fc96e11200a-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-3a090e55-ad26-4e2e-8991-5fc96e11200a-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-3a090e55-ad26-4e2e-8991-5fc96e11200a-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-3a090e55-ad26-4e2e-8991-5fc96e11200a-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-4a9efe8d-12b3-4134-a932-a4e288cadf35-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-4a9efe8d-12b3-4134-a932-a4e288cadf35-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-4a9efe8d-12b3-4134-a932-a4e288cadf35-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-4a9efe8d-12b3-4134-a932-a4e288cadf35-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-4aa85334-6e99-4dac-9d75-dfd59ec37250-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-4aa85334-6e99-4dac-9d75-dfd59ec37250-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-4aa85334-6e99-4dac-9d75-dfd59ec37250-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-4aa85334-6e99-4dac-9d75-dfd59ec37250-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-4fb7f274-cd1b-484d-95d3-42521e10e10d-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-4fb7f274-cd1b-484d-95d3-42521e10e10d-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-4fb7f274-cd1b-484d-95d3-42521e10e10d-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-4fb7f274-cd1b-484d-95d3-42521e10e10d-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-5d1ee207-355b-47ee-b58d-5cf32a3b8349-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-5d1ee207-355b-47ee-b58d-5cf32a3b8349-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-5d1ee207-355b-47ee-b58d-5cf32a3b8349-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-5d1ee207-355b-47ee-b58d-5cf32a3b8349-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-7f8faf7f-2d0f-42c8-84c9-85df909dba39-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-7f8faf7f-2d0f-42c8-84c9-85df909dba39-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-7f8faf7f-2d0f-42c8-84c9-85df909dba39-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-7f8faf7f-2d0f-42c8-84c9-85df909dba39-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-999ae312-021c-4823-b0b6-08014cea263a-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-999ae312-021c-4823-b0b6-08014cea263a-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-999ae312-021c-4823-b0b6-08014cea263a-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-999ae312-021c-4823-b0b6-08014cea263a-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-9c2ae306-eeca-4e27-af5c-88e4536e5bd3-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-9c2ae306-eeca-4e27-af5c-88e4536e5bd3-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-9c2ae306-eeca-4e27-af5c-88e4536e5bd3-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-9c2ae306-eeca-4e27-af5c-88e4536e5bd3-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-a12a3c66-8abb-40a8-8d69-bbf7e516b710-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-a12a3c66-8abb-40a8-8d69-bbf7e516b710-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-a12a3c66-8abb-40a8-8d69-bbf7e516b710-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-a12a3c66-8abb-40a8-8d69-bbf7e516b710-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-a90c681e-2310-4bbc-8b56-e81b14aa1817-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-a90c681e-2310-4bbc-8b56-e81b14aa1817-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-a90c681e-2310-4bbc-8b56-e81b14aa1817-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-a90c681e-2310-4bbc-8b56-e81b14aa1817-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-bf15b1cf-2d02-47fd-aa12-1117de3f9071-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-bf15b1cf-2d02-47fd-aa12-1117de3f9071-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-bf15b1cf-2d02-47fd-aa12-1117de3f9071-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-bf15b1cf-2d02-47fd-aa12-1117de3f9071-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-df985307-35c6-4c43-9635-64f6e9ce9e3b-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-df985307-35c6-4c43-9635-64f6e9ce9e3b-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-df985307-35c6-4c43-9635-64f6e9ce9e3b-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-df985307-35c6-4c43-9635-64f6e9ce9e3b-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-e048b59b-38c6-417a-b452-41539eadc475-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-e048b59b-38c6-417a-b452-41539eadc475-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-e048b59b-38c6-417a-b452-41539eadc475-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-e048b59b-38c6-417a-b452-41539eadc475-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-e22924ef-f192-483a-9b57-82d2123ba08e-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-e22924ef-f192-483a-9b57-82d2123ba08e-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-e22924ef-f192-483a-9b57-82d2123ba08e-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-e22924ef-f192-483a-9b57-82d2123ba08e-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-e877c5f2-5fb9-4528-a317-5b30608bb45c-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-e877c5f2-5fb9-4528-a317-5b30608bb45c-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/.part-00000-e877c5f2-5fb9-4528-a317-5b30608bb45c-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/.part-00000-e877c5f2-5fb9-4528-a317-5b30608bb45c-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/_delta_log/.00000000000000000010.checkpoint.parquet.crc b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/_delta_log/.00000000000000000010.checkpoint.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/_delta_log/.00000000000000000010.checkpoint.parquet.crc rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/_delta_log/.00000000000000000010.checkpoint.parquet.crc diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/_delta_log/00000000000000000010.checkpoint.parquet b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/_delta_log/00000000000000000010.checkpoint.parquet similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/_delta_log/00000000000000000010.checkpoint.parquet rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/_delta_log/00000000000000000010.checkpoint.parquet diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/_delta_log/00000000000000000011.json b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/_delta_log/00000000000000000011.json similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/_delta_log/00000000000000000011.json rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/_delta_log/00000000000000000011.json diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/_delta_log/00000000000000000012.json b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/_delta_log/00000000000000000012.json similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/_delta_log/00000000000000000012.json rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/_delta_log/00000000000000000012.json diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/_delta_log/00000000000000000013.json b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/_delta_log/00000000000000000013.json similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/_delta_log/00000000000000000013.json rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/_delta_log/00000000000000000013.json diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/_delta_log/00000000000000000014.json b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/_delta_log/00000000000000000014.json similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/_delta_log/00000000000000000014.json rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/_delta_log/00000000000000000014.json diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/_delta_log/00000000000000000015.json b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/_delta_log/00000000000000000015.json similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/_delta_log/00000000000000000015.json rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/_delta_log/00000000000000000015.json diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/_delta_log/00000000000000000016.json b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/_delta_log/00000000000000000016.json similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/_delta_log/00000000000000000016.json rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/_delta_log/00000000000000000016.json diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/_delta_log/00000000000000000017.json b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/_delta_log/00000000000000000017.json similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/_delta_log/00000000000000000017.json rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/_delta_log/00000000000000000017.json diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/_delta_log/00000000000000000018.json b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/_delta_log/00000000000000000018.json similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/_delta_log/00000000000000000018.json rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/_delta_log/00000000000000000018.json diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/_delta_log/00000000000000000019.json b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/_delta_log/00000000000000000019.json similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/_delta_log/00000000000000000019.json rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/_delta_log/00000000000000000019.json diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/_delta_log/_last_checkpoint b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/_delta_log/_last_checkpoint similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/_delta_log/_last_checkpoint rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/_delta_log/_last_checkpoint diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/part-00000-106da899-cbd5-491f-b560-60792edbe807-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-106da899-cbd5-491f-b560-60792edbe807-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/part-00000-106da899-cbd5-491f-b560-60792edbe807-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-106da899-cbd5-491f-b560-60792edbe807-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/part-00000-12ef2b67-494f-4eff-8e56-2431d0adf4bb-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-12ef2b67-494f-4eff-8e56-2431d0adf4bb-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/part-00000-12ef2b67-494f-4eff-8e56-2431d0adf4bb-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-12ef2b67-494f-4eff-8e56-2431d0adf4bb-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/part-00000-197ae400-931d-4eb2-8059-a4688c2d59a9-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-197ae400-931d-4eb2-8059-a4688c2d59a9-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/part-00000-197ae400-931d-4eb2-8059-a4688c2d59a9-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-197ae400-931d-4eb2-8059-a4688c2d59a9-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/part-00000-27b57b04-e80f-48b2-9064-c459e9d26a87-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-27b57b04-e80f-48b2-9064-c459e9d26a87-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/part-00000-27b57b04-e80f-48b2-9064-c459e9d26a87-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-27b57b04-e80f-48b2-9064-c459e9d26a87-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/part-00000-2e12af63-21db-42d7-9bda-766b1255e6f6-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-2e12af63-21db-42d7-9bda-766b1255e6f6-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/part-00000-2e12af63-21db-42d7-9bda-766b1255e6f6-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-2e12af63-21db-42d7-9bda-766b1255e6f6-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/part-00000-3a090e55-ad26-4e2e-8991-5fc96e11200a-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-3a090e55-ad26-4e2e-8991-5fc96e11200a-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/part-00000-3a090e55-ad26-4e2e-8991-5fc96e11200a-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-3a090e55-ad26-4e2e-8991-5fc96e11200a-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/part-00000-4a9efe8d-12b3-4134-a932-a4e288cadf35-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-4a9efe8d-12b3-4134-a932-a4e288cadf35-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/part-00000-4a9efe8d-12b3-4134-a932-a4e288cadf35-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-4a9efe8d-12b3-4134-a932-a4e288cadf35-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/part-00000-4aa85334-6e99-4dac-9d75-dfd59ec37250-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-4aa85334-6e99-4dac-9d75-dfd59ec37250-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/part-00000-4aa85334-6e99-4dac-9d75-dfd59ec37250-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-4aa85334-6e99-4dac-9d75-dfd59ec37250-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/part-00000-4fb7f274-cd1b-484d-95d3-42521e10e10d-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-4fb7f274-cd1b-484d-95d3-42521e10e10d-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/part-00000-4fb7f274-cd1b-484d-95d3-42521e10e10d-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-4fb7f274-cd1b-484d-95d3-42521e10e10d-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/part-00000-5d1ee207-355b-47ee-b58d-5cf32a3b8349-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-5d1ee207-355b-47ee-b58d-5cf32a3b8349-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/part-00000-5d1ee207-355b-47ee-b58d-5cf32a3b8349-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-5d1ee207-355b-47ee-b58d-5cf32a3b8349-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/part-00000-7f8faf7f-2d0f-42c8-84c9-85df909dba39-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-7f8faf7f-2d0f-42c8-84c9-85df909dba39-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/part-00000-7f8faf7f-2d0f-42c8-84c9-85df909dba39-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-7f8faf7f-2d0f-42c8-84c9-85df909dba39-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/part-00000-999ae312-021c-4823-b0b6-08014cea263a-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-999ae312-021c-4823-b0b6-08014cea263a-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/part-00000-999ae312-021c-4823-b0b6-08014cea263a-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-999ae312-021c-4823-b0b6-08014cea263a-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/part-00000-9c2ae306-eeca-4e27-af5c-88e4536e5bd3-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-9c2ae306-eeca-4e27-af5c-88e4536e5bd3-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/part-00000-9c2ae306-eeca-4e27-af5c-88e4536e5bd3-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-9c2ae306-eeca-4e27-af5c-88e4536e5bd3-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/part-00000-a12a3c66-8abb-40a8-8d69-bbf7e516b710-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-a12a3c66-8abb-40a8-8d69-bbf7e516b710-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/part-00000-a12a3c66-8abb-40a8-8d69-bbf7e516b710-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-a12a3c66-8abb-40a8-8d69-bbf7e516b710-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/part-00000-a90c681e-2310-4bbc-8b56-e81b14aa1817-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-a90c681e-2310-4bbc-8b56-e81b14aa1817-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/part-00000-a90c681e-2310-4bbc-8b56-e81b14aa1817-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-a90c681e-2310-4bbc-8b56-e81b14aa1817-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/part-00000-bf15b1cf-2d02-47fd-aa12-1117de3f9071-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-bf15b1cf-2d02-47fd-aa12-1117de3f9071-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/part-00000-bf15b1cf-2d02-47fd-aa12-1117de3f9071-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-bf15b1cf-2d02-47fd-aa12-1117de3f9071-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/part-00000-df985307-35c6-4c43-9635-64f6e9ce9e3b-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-df985307-35c6-4c43-9635-64f6e9ce9e3b-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/part-00000-df985307-35c6-4c43-9635-64f6e9ce9e3b-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-df985307-35c6-4c43-9635-64f6e9ce9e3b-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/part-00000-e048b59b-38c6-417a-b452-41539eadc475-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-e048b59b-38c6-417a-b452-41539eadc475-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/part-00000-e048b59b-38c6-417a-b452-41539eadc475-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-e048b59b-38c6-417a-b452-41539eadc475-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/part-00000-e22924ef-f192-483a-9b57-82d2123ba08e-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-e22924ef-f192-483a-9b57-82d2123ba08e-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/part-00000-e22924ef-f192-483a-9b57-82d2123ba08e-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-e22924ef-f192-483a-9b57-82d2123ba08e-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/checkpointed-delta-table/part-00000-e877c5f2-5fb9-4528-a317-5b30608bb45c-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-e877c5f2-5fb9-4528-a317-5b30608bb45c-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/checkpointed-delta-table/part-00000-e877c5f2-5fb9-4528-a317-5b30608bb45c-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/checkpointed-delta-table/part-00000-e877c5f2-5fb9-4528-a317-5b30608bb45c-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/data-reader-array-primitives/.part-00000-182665f0-30df-470d-a5cb-8d9d483ed390-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/data-reader-array-primitives/.part-00000-182665f0-30df-470d-a5cb-8d9d483ed390-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/data-reader-array-primitives/.part-00000-182665f0-30df-470d-a5cb-8d9d483ed390-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/data-reader-array-primitives/.part-00000-182665f0-30df-470d-a5cb-8d9d483ed390-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/data-reader-array-primitives/.part-00001-2e274fe7-eb75-4b73-8c72-423ee747abc0-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/data-reader-array-primitives/.part-00001-2e274fe7-eb75-4b73-8c72-423ee747abc0-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/data-reader-array-primitives/.part-00001-2e274fe7-eb75-4b73-8c72-423ee747abc0-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/data-reader-array-primitives/.part-00001-2e274fe7-eb75-4b73-8c72-423ee747abc0-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/data-reader-array-primitives/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v1/data-reader-array-primitives/_delta_log/00000000000000000000.json similarity index 100% rename from presto-delta/src/test/resources/data-reader-array-primitives/_delta_log/00000000000000000000.json rename to presto-delta/src/test/resources/delta_v1/data-reader-array-primitives/_delta_log/00000000000000000000.json diff --git a/presto-delta/src/test/resources/data-reader-array-primitives/part-00000-182665f0-30df-470d-a5cb-8d9d483ed390-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/data-reader-array-primitives/part-00000-182665f0-30df-470d-a5cb-8d9d483ed390-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/data-reader-array-primitives/part-00000-182665f0-30df-470d-a5cb-8d9d483ed390-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/data-reader-array-primitives/part-00000-182665f0-30df-470d-a5cb-8d9d483ed390-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/data-reader-array-primitives/part-00001-2e274fe7-eb75-4b73-8c72-423ee747abc0-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/data-reader-array-primitives/part-00001-2e274fe7-eb75-4b73-8c72-423ee747abc0-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/data-reader-array-primitives/part-00001-2e274fe7-eb75-4b73-8c72-423ee747abc0-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/data-reader-array-primitives/part-00001-2e274fe7-eb75-4b73-8c72-423ee747abc0-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/data-reader-map/.part-00000-d9004e55-077b-4728-9ee6-b3401faa46ba-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/data-reader-map/.part-00000-d9004e55-077b-4728-9ee6-b3401faa46ba-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/data-reader-map/.part-00000-d9004e55-077b-4728-9ee6-b3401faa46ba-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/data-reader-map/.part-00000-d9004e55-077b-4728-9ee6-b3401faa46ba-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/data-reader-map/.part-00001-3d30d085-4cde-471e-a396-12af34a70812-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/data-reader-map/.part-00001-3d30d085-4cde-471e-a396-12af34a70812-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/data-reader-map/.part-00001-3d30d085-4cde-471e-a396-12af34a70812-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/data-reader-map/.part-00001-3d30d085-4cde-471e-a396-12af34a70812-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/data-reader-map/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v1/data-reader-map/_delta_log/00000000000000000000.json similarity index 100% rename from presto-delta/src/test/resources/data-reader-map/_delta_log/00000000000000000000.json rename to presto-delta/src/test/resources/delta_v1/data-reader-map/_delta_log/00000000000000000000.json diff --git a/presto-delta/src/test/resources/data-reader-map/part-00000-d9004e55-077b-4728-9ee6-b3401faa46ba-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/data-reader-map/part-00000-d9004e55-077b-4728-9ee6-b3401faa46ba-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/data-reader-map/part-00000-d9004e55-077b-4728-9ee6-b3401faa46ba-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/data-reader-map/part-00000-d9004e55-077b-4728-9ee6-b3401faa46ba-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/data-reader-map/part-00001-3d30d085-4cde-471e-a396-12af34a70812-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/data-reader-map/part-00001-3d30d085-4cde-471e-a396-12af34a70812-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/data-reader-map/part-00001-3d30d085-4cde-471e-a396-12af34a70812-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/data-reader-map/part-00001-3d30d085-4cde-471e-a396-12af34a70812-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/data-reader-nested-struct/.part-00000-f2547b28-9219-4628-8462-cc9c56edfebb-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/data-reader-nested-struct/.part-00000-f2547b28-9219-4628-8462-cc9c56edfebb-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/data-reader-nested-struct/.part-00000-f2547b28-9219-4628-8462-cc9c56edfebb-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/data-reader-nested-struct/.part-00000-f2547b28-9219-4628-8462-cc9c56edfebb-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/data-reader-nested-struct/.part-00001-0f755735-3b5b-449a-8f93-92a40d9f065d-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/data-reader-nested-struct/.part-00001-0f755735-3b5b-449a-8f93-92a40d9f065d-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/data-reader-nested-struct/.part-00001-0f755735-3b5b-449a-8f93-92a40d9f065d-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/data-reader-nested-struct/.part-00001-0f755735-3b5b-449a-8f93-92a40d9f065d-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/data-reader-nested-struct/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v1/data-reader-nested-struct/_delta_log/00000000000000000000.json similarity index 100% rename from presto-delta/src/test/resources/data-reader-nested-struct/_delta_log/00000000000000000000.json rename to presto-delta/src/test/resources/delta_v1/data-reader-nested-struct/_delta_log/00000000000000000000.json diff --git a/presto-delta/src/test/resources/data-reader-nested-struct/part-00000-f2547b28-9219-4628-8462-cc9c56edfebb-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/data-reader-nested-struct/part-00000-f2547b28-9219-4628-8462-cc9c56edfebb-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/data-reader-nested-struct/part-00000-f2547b28-9219-4628-8462-cc9c56edfebb-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/data-reader-nested-struct/part-00000-f2547b28-9219-4628-8462-cc9c56edfebb-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/data-reader-nested-struct/part-00001-0f755735-3b5b-449a-8f93-92a40d9f065d-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/data-reader-nested-struct/part-00001-0f755735-3b5b-449a-8f93-92a40d9f065d-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/data-reader-nested-struct/part-00001-0f755735-3b5b-449a-8f93-92a40d9f065d-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/data-reader-nested-struct/part-00001-0f755735-3b5b-449a-8f93-92a40d9f065d-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/data-reader-partition-values/_delta_log/00000000000000000000.crc b/presto-delta/src/test/resources/delta_v1/data-reader-partition-values/_delta_log/00000000000000000000.crc similarity index 100% rename from presto-delta/src/test/resources/data-reader-partition-values/_delta_log/00000000000000000000.crc rename to presto-delta/src/test/resources/delta_v1/data-reader-partition-values/_delta_log/00000000000000000000.crc diff --git a/presto-delta/src/test/resources/data-reader-partition-values/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v1/data-reader-partition-values/_delta_log/00000000000000000000.json similarity index 100% rename from presto-delta/src/test/resources/data-reader-partition-values/_delta_log/00000000000000000000.json rename to presto-delta/src/test/resources/delta_v1/data-reader-partition-values/_delta_log/00000000000000000000.json diff --git a/presto-delta/src/test/resources/data-reader-partition-values/as_int=0/as_long=0/as_byte=0/as_short=0/as_boolean=true/as_float=0.0/as_double=0.0/as_string=0/as_date=2021-09-08/as_timestamp=2021-09-08 11%3A11%3A11/as_big_decimal=0/part-00005-2d4e572d-5bdd-43f4-9d13-7c5354deb1f6.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/data-reader-partition-values/as_int=0/as_long=0/as_byte=0/as_short=0/as_boolean=true/as_float=0.0/as_double=0.0/as_string=0/as_date=2021-09-08/as_timestamp=2021-09-08%2011%253A11%253A11/as_big_decimal=0/part-00005-2d4e572d-5bdd-43f4-9d13-7c5354deb1f6.c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/data-reader-partition-values/as_int=0/as_long=0/as_byte=0/as_short=0/as_boolean=true/as_float=0.0/as_double=0.0/as_string=0/as_date=2021-09-08/as_timestamp=2021-09-08 11%3A11%3A11/as_big_decimal=0/part-00005-2d4e572d-5bdd-43f4-9d13-7c5354deb1f6.c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/data-reader-partition-values/as_int=0/as_long=0/as_byte=0/as_short=0/as_boolean=true/as_float=0.0/as_double=0.0/as_string=0/as_date=2021-09-08/as_timestamp=2021-09-08%2011%253A11%253A11/as_big_decimal=0/part-00005-2d4e572d-5bdd-43f4-9d13-7c5354deb1f6.c000.snappy.parquet diff --git a/presto-delta/src/test/resources/data-reader-partition-values/as_int=1/as_long=1/as_byte=1/as_short=1/as_boolean=false/as_float=1.0/as_double=1.0/as_string=1/as_date=2021-09-08/as_timestamp=2021-09-08 11%3A11%3A11/as_big_decimal=1/part-00007-00fd7022-5e9c-4cba-b8c8-2297ef36e5ff.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/data-reader-partition-values/as_int=1/as_long=1/as_byte=1/as_short=1/as_boolean=false/as_float=1.0/as_double=1.0/as_string=1/as_date=2021-09-08/as_timestamp=2021-09-08%2011%253A11%253A11/as_big_decimal=1/part-00007-00fd7022-5e9c-4cba-b8c8-2297ef36e5ff.c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/data-reader-partition-values/as_int=1/as_long=1/as_byte=1/as_short=1/as_boolean=false/as_float=1.0/as_double=1.0/as_string=1/as_date=2021-09-08/as_timestamp=2021-09-08 11%3A11%3A11/as_big_decimal=1/part-00007-00fd7022-5e9c-4cba-b8c8-2297ef36e5ff.c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/data-reader-partition-values/as_int=1/as_long=1/as_byte=1/as_short=1/as_boolean=false/as_float=1.0/as_double=1.0/as_string=1/as_date=2021-09-08/as_timestamp=2021-09-08%2011%253A11%253A11/as_big_decimal=1/part-00007-00fd7022-5e9c-4cba-b8c8-2297ef36e5ff.c000.snappy.parquet diff --git a/presto-delta/src/test/resources/data-reader-partition-values/as_int=__HIVE_DEFAULT_PARTITION__/as_long=__HIVE_DEFAULT_PARTITION__/as_byte=__HIVE_DEFAULT_PARTITION__/as_short=__HIVE_DEFAULT_PARTITION__/as_boolean=__HIVE_DEFAULT_PARTITION__/as_float=__HIVE_DEFAULT_PARTITION__/as_double=__HIVE_DEFAULT_PARTITION__/as_string=__HIVE_DEFAULT_PARTITION__/as_date=__HIVE_DEFAULT_PARTITION__/as_timestamp=__HIVE_DEFAULT_PARTITION__/as_big_decimal=__HIVE_DEFAULT_PARTITION__/part-00002-b31c437d-93a7-462c-b88b-f8b49370d785.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/data-reader-partition-values/as_int=__HIVE_DEFAULT_PARTITION__/as_long=__HIVE_DEFAULT_PARTITION__/as_byte=__HIVE_DEFAULT_PARTITION__/as_short=__HIVE_DEFAULT_PARTITION__/as_boolean=__HIVE_DEFAULT_PARTITION__/as_float=__HIVE_DEFAULT_PARTITION__/as_double=__HIVE_DEFAULT_PARTITION__/as_string=__HIVE_DEFAULT_PARTITION__/as_date=__HIVE_DEFAULT_PARTITION__/as_timestamp=__HIVE_DEFAULT_PARTITION__/as_big_decimal=__HIVE_DEFAULT_PARTITION__/part-00002-b31c437d-93a7-462c-b88b-f8b49370d785.c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/data-reader-partition-values/as_int=__HIVE_DEFAULT_PARTITION__/as_long=__HIVE_DEFAULT_PARTITION__/as_byte=__HIVE_DEFAULT_PARTITION__/as_short=__HIVE_DEFAULT_PARTITION__/as_boolean=__HIVE_DEFAULT_PARTITION__/as_float=__HIVE_DEFAULT_PARTITION__/as_double=__HIVE_DEFAULT_PARTITION__/as_string=__HIVE_DEFAULT_PARTITION__/as_date=__HIVE_DEFAULT_PARTITION__/as_timestamp=__HIVE_DEFAULT_PARTITION__/as_big_decimal=__HIVE_DEFAULT_PARTITION__/part-00002-b31c437d-93a7-462c-b88b-f8b49370d785.c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/data-reader-partition-values/as_int=__HIVE_DEFAULT_PARTITION__/as_long=__HIVE_DEFAULT_PARTITION__/as_byte=__HIVE_DEFAULT_PARTITION__/as_short=__HIVE_DEFAULT_PARTITION__/as_boolean=__HIVE_DEFAULT_PARTITION__/as_float=__HIVE_DEFAULT_PARTITION__/as_double=__HIVE_DEFAULT_PARTITION__/as_string=__HIVE_DEFAULT_PARTITION__/as_date=__HIVE_DEFAULT_PARTITION__/as_timestamp=__HIVE_DEFAULT_PARTITION__/as_big_decimal=__HIVE_DEFAULT_PARTITION__/part-00002-b31c437d-93a7-462c-b88b-f8b49370d785.c000.snappy.parquet diff --git a/presto-delta/src/test/resources/data-reader-primitives/.part-00000-4f2f0b9f-50b3-4e7b-96a1-e2bb0f246b06-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/data-reader-primitives/.part-00000-4f2f0b9f-50b3-4e7b-96a1-e2bb0f246b06-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/data-reader-primitives/.part-00000-4f2f0b9f-50b3-4e7b-96a1-e2bb0f246b06-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/data-reader-primitives/.part-00000-4f2f0b9f-50b3-4e7b-96a1-e2bb0f246b06-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/data-reader-primitives/.part-00001-09e47b80-36c2-4475-a810-fbd8e7994971-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/data-reader-primitives/.part-00001-09e47b80-36c2-4475-a810-fbd8e7994971-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/data-reader-primitives/.part-00001-09e47b80-36c2-4475-a810-fbd8e7994971-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/data-reader-primitives/.part-00001-09e47b80-36c2-4475-a810-fbd8e7994971-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/data-reader-primitives/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v1/data-reader-primitives/_delta_log/00000000000000000000.json similarity index 100% rename from presto-delta/src/test/resources/data-reader-primitives/_delta_log/00000000000000000000.json rename to presto-delta/src/test/resources/delta_v1/data-reader-primitives/_delta_log/00000000000000000000.json diff --git a/presto-delta/src/test/resources/data-reader-primitives/part-00000-4f2f0b9f-50b3-4e7b-96a1-e2bb0f246b06-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/data-reader-primitives/part-00000-4f2f0b9f-50b3-4e7b-96a1-e2bb0f246b06-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/data-reader-primitives/part-00000-4f2f0b9f-50b3-4e7b-96a1-e2bb0f246b06-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/data-reader-primitives/part-00000-4f2f0b9f-50b3-4e7b-96a1-e2bb0f246b06-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/data-reader-primitives/part-00001-09e47b80-36c2-4475-a810-fbd8e7994971-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/data-reader-primitives/part-00001-09e47b80-36c2-4475-a810-fbd8e7994971-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/data-reader-primitives/part-00001-09e47b80-36c2-4475-a810-fbd8e7994971-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/data-reader-primitives/part-00001-09e47b80-36c2-4475-a810-fbd8e7994971-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/deltatbl-partition-prune/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v1/deltatbl-partition-prune/_delta_log/00000000000000000000.json similarity index 100% rename from presto-delta/src/test/resources/deltatbl-partition-prune/_delta_log/00000000000000000000.json rename to presto-delta/src/test/resources/delta_v1/deltatbl-partition-prune/_delta_log/00000000000000000000.json diff --git a/presto-delta/src/test/resources/deltatbl-partition-prune/date=20180512/city=sh/.part-00001-c87aeb63-6d9c-4511-b8b3-71d02178554f.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/deltatbl-partition-prune/date=20180512/city=sh/.part-00001-c87aeb63-6d9c-4511-b8b3-71d02178554f.c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/deltatbl-partition-prune/date=20180512/city=sh/.part-00001-c87aeb63-6d9c-4511-b8b3-71d02178554f.c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/deltatbl-partition-prune/date=20180512/city=sh/.part-00001-c87aeb63-6d9c-4511-b8b3-71d02178554f.c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/deltatbl-partition-prune/date=20180512/city=sh/part-00001-c87aeb63-6d9c-4511-b8b3-71d02178554f.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/deltatbl-partition-prune/date=20180512/city=sh/part-00001-c87aeb63-6d9c-4511-b8b3-71d02178554f.c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/deltatbl-partition-prune/date=20180512/city=sh/part-00001-c87aeb63-6d9c-4511-b8b3-71d02178554f.c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/deltatbl-partition-prune/date=20180512/city=sh/part-00001-c87aeb63-6d9c-4511-b8b3-71d02178554f.c000.snappy.parquet diff --git a/presto-delta/src/test/resources/deltatbl-partition-prune/date=20180520/city=bj/.part-00001-4c732f0f-a473-400a-8ba3-1499f599b8f1.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/deltatbl-partition-prune/date=20180520/city=bj/.part-00001-4c732f0f-a473-400a-8ba3-1499f599b8f1.c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/deltatbl-partition-prune/date=20180520/city=bj/.part-00001-4c732f0f-a473-400a-8ba3-1499f599b8f1.c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/deltatbl-partition-prune/date=20180520/city=bj/.part-00001-4c732f0f-a473-400a-8ba3-1499f599b8f1.c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/deltatbl-partition-prune/date=20180520/city=bj/part-00001-4c732f0f-a473-400a-8ba3-1499f599b8f1.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/deltatbl-partition-prune/date=20180520/city=bj/part-00001-4c732f0f-a473-400a-8ba3-1499f599b8f1.c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/deltatbl-partition-prune/date=20180520/city=bj/part-00001-4c732f0f-a473-400a-8ba3-1499f599b8f1.c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/deltatbl-partition-prune/date=20180520/city=bj/part-00001-4c732f0f-a473-400a-8ba3-1499f599b8f1.c000.snappy.parquet diff --git a/presto-delta/src/test/resources/deltatbl-partition-prune/date=20180520/city=hz/.part-00000-de1d5bcd-ad7e-4b88-ba9b-31fb8aeb8093.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/deltatbl-partition-prune/date=20180520/city=hz/.part-00000-de1d5bcd-ad7e-4b88-ba9b-31fb8aeb8093.c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/deltatbl-partition-prune/date=20180520/city=hz/.part-00000-de1d5bcd-ad7e-4b88-ba9b-31fb8aeb8093.c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/deltatbl-partition-prune/date=20180520/city=hz/.part-00000-de1d5bcd-ad7e-4b88-ba9b-31fb8aeb8093.c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/deltatbl-partition-prune/date=20180520/city=hz/part-00000-de1d5bcd-ad7e-4b88-ba9b-31fb8aeb8093.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/deltatbl-partition-prune/date=20180520/city=hz/part-00000-de1d5bcd-ad7e-4b88-ba9b-31fb8aeb8093.c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/deltatbl-partition-prune/date=20180520/city=hz/part-00000-de1d5bcd-ad7e-4b88-ba9b-31fb8aeb8093.c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/deltatbl-partition-prune/date=20180520/city=hz/part-00000-de1d5bcd-ad7e-4b88-ba9b-31fb8aeb8093.c000.snappy.parquet diff --git a/presto-delta/src/test/resources/deltatbl-partition-prune/date=20180718/city=hz/.part-00000-f888e95b-c831-43fe-bba8-3dbf43b4eb86.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/deltatbl-partition-prune/date=20180718/city=hz/.part-00000-f888e95b-c831-43fe-bba8-3dbf43b4eb86.c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/deltatbl-partition-prune/date=20180718/city=hz/.part-00000-f888e95b-c831-43fe-bba8-3dbf43b4eb86.c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/deltatbl-partition-prune/date=20180718/city=hz/.part-00000-f888e95b-c831-43fe-bba8-3dbf43b4eb86.c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/deltatbl-partition-prune/date=20180718/city=hz/part-00000-f888e95b-c831-43fe-bba8-3dbf43b4eb86.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/deltatbl-partition-prune/date=20180718/city=hz/part-00000-f888e95b-c831-43fe-bba8-3dbf43b4eb86.c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/deltatbl-partition-prune/date=20180718/city=hz/part-00000-f888e95b-c831-43fe-bba8-3dbf43b4eb86.c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/deltatbl-partition-prune/date=20180718/city=hz/part-00000-f888e95b-c831-43fe-bba8-3dbf43b4eb86.c000.snappy.parquet diff --git a/presto-delta/src/test/resources/deltatbl-partition-prune/date=20181212/city=sz/.part-00001-529ff89b-55c6-4405-a6cc-04759d5f692b.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/deltatbl-partition-prune/date=20181212/city=sz/.part-00001-529ff89b-55c6-4405-a6cc-04759d5f692b.c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/deltatbl-partition-prune/date=20181212/city=sz/.part-00001-529ff89b-55c6-4405-a6cc-04759d5f692b.c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/deltatbl-partition-prune/date=20181212/city=sz/.part-00001-529ff89b-55c6-4405-a6cc-04759d5f692b.c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/deltatbl-partition-prune/date=20181212/city=sz/part-00001-529ff89b-55c6-4405-a6cc-04759d5f692b.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/deltatbl-partition-prune/date=20181212/city=sz/part-00001-529ff89b-55c6-4405-a6cc-04759d5f692b.c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/deltatbl-partition-prune/date=20181212/city=sz/part-00001-529ff89b-55c6-4405-a6cc-04759d5f692b.c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/deltatbl-partition-prune/date=20181212/city=sz/part-00001-529ff89b-55c6-4405-a6cc-04759d5f692b.c000.snappy.parquet diff --git a/presto-delta/src/test/resources/snapshot-data3/.part-00000-0441e99a-c421-400e-83a1-212aa6c84c73-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/snapshot-data3/.part-00000-0441e99a-c421-400e-83a1-212aa6c84c73-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/snapshot-data3/.part-00000-0441e99a-c421-400e-83a1-212aa6c84c73-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/snapshot-data3/.part-00000-0441e99a-c421-400e-83a1-212aa6c84c73-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/snapshot-data3/.part-00000-64680d94-9e18-4fa1-9ca9-f0cd8a9cfd11-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/snapshot-data3/.part-00000-64680d94-9e18-4fa1-9ca9-f0cd8a9cfd11-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/snapshot-data3/.part-00000-64680d94-9e18-4fa1-9ca9-f0cd8a9cfd11-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/snapshot-data3/.part-00000-64680d94-9e18-4fa1-9ca9-f0cd8a9cfd11-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/snapshot-data3/.part-00000-842017c2-3e02-44b5-a3d6-5b9ae1745045-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/snapshot-data3/.part-00000-842017c2-3e02-44b5-a3d6-5b9ae1745045-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/snapshot-data3/.part-00000-842017c2-3e02-44b5-a3d6-5b9ae1745045-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/snapshot-data3/.part-00000-842017c2-3e02-44b5-a3d6-5b9ae1745045-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/snapshot-data3/.part-00000-cb078bc1-0aeb-46ed-9cf8-74a843b32c8c-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/snapshot-data3/.part-00000-cb078bc1-0aeb-46ed-9cf8-74a843b32c8c-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/snapshot-data3/.part-00000-cb078bc1-0aeb-46ed-9cf8-74a843b32c8c-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/snapshot-data3/.part-00000-cb078bc1-0aeb-46ed-9cf8-74a843b32c8c-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/snapshot-data3/.part-00001-34c8c673-3f44-4fa7-b94e-07357ec28a7d-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/snapshot-data3/.part-00001-34c8c673-3f44-4fa7-b94e-07357ec28a7d-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/snapshot-data3/.part-00001-34c8c673-3f44-4fa7-b94e-07357ec28a7d-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/snapshot-data3/.part-00001-34c8c673-3f44-4fa7-b94e-07357ec28a7d-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/snapshot-data3/.part-00001-9bf4b8f8-1b95-411b-bf10-28dc03aa9d2f-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/snapshot-data3/.part-00001-9bf4b8f8-1b95-411b-bf10-28dc03aa9d2f-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/snapshot-data3/.part-00001-9bf4b8f8-1b95-411b-bf10-28dc03aa9d2f-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/snapshot-data3/.part-00001-9bf4b8f8-1b95-411b-bf10-28dc03aa9d2f-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/snapshot-data3/.part-00001-b8249b87-0b7a-4461-8a8a-fa958802b523-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/snapshot-data3/.part-00001-b8249b87-0b7a-4461-8a8a-fa958802b523-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/snapshot-data3/.part-00001-b8249b87-0b7a-4461-8a8a-fa958802b523-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/snapshot-data3/.part-00001-b8249b87-0b7a-4461-8a8a-fa958802b523-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/snapshot-data3/.part-00001-e62ca5a1-923c-4ee6-998b-c61d1cfb0b1c-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/snapshot-data3/.part-00001-e62ca5a1-923c-4ee6-998b-c61d1cfb0b1c-c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/snapshot-data3/.part-00001-e62ca5a1-923c-4ee6-998b-c61d1cfb0b1c-c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/snapshot-data3/.part-00001-e62ca5a1-923c-4ee6-998b-c61d1cfb0b1c-c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/snapshot-data3/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v1/snapshot-data3/_delta_log/00000000000000000000.json similarity index 100% rename from presto-delta/src/test/resources/snapshot-data3/_delta_log/00000000000000000000.json rename to presto-delta/src/test/resources/delta_v1/snapshot-data3/_delta_log/00000000000000000000.json diff --git a/presto-delta/src/test/resources/snapshot-data3/_delta_log/00000000000000000001.json b/presto-delta/src/test/resources/delta_v1/snapshot-data3/_delta_log/00000000000000000001.json similarity index 100% rename from presto-delta/src/test/resources/snapshot-data3/_delta_log/00000000000000000001.json rename to presto-delta/src/test/resources/delta_v1/snapshot-data3/_delta_log/00000000000000000001.json diff --git a/presto-delta/src/test/resources/snapshot-data3/_delta_log/00000000000000000002.json b/presto-delta/src/test/resources/delta_v1/snapshot-data3/_delta_log/00000000000000000002.json similarity index 100% rename from presto-delta/src/test/resources/snapshot-data3/_delta_log/00000000000000000002.json rename to presto-delta/src/test/resources/delta_v1/snapshot-data3/_delta_log/00000000000000000002.json diff --git a/presto-delta/src/test/resources/snapshot-data3/_delta_log/00000000000000000003.json b/presto-delta/src/test/resources/delta_v1/snapshot-data3/_delta_log/00000000000000000003.json similarity index 100% rename from presto-delta/src/test/resources/snapshot-data3/_delta_log/00000000000000000003.json rename to presto-delta/src/test/resources/delta_v1/snapshot-data3/_delta_log/00000000000000000003.json diff --git a/presto-delta/src/test/resources/snapshot-data3/part-00000-0441e99a-c421-400e-83a1-212aa6c84c73-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/snapshot-data3/part-00000-0441e99a-c421-400e-83a1-212aa6c84c73-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/snapshot-data3/part-00000-0441e99a-c421-400e-83a1-212aa6c84c73-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/snapshot-data3/part-00000-0441e99a-c421-400e-83a1-212aa6c84c73-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/snapshot-data3/part-00000-64680d94-9e18-4fa1-9ca9-f0cd8a9cfd11-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/snapshot-data3/part-00000-64680d94-9e18-4fa1-9ca9-f0cd8a9cfd11-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/snapshot-data3/part-00000-64680d94-9e18-4fa1-9ca9-f0cd8a9cfd11-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/snapshot-data3/part-00000-64680d94-9e18-4fa1-9ca9-f0cd8a9cfd11-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/snapshot-data3/part-00000-842017c2-3e02-44b5-a3d6-5b9ae1745045-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/snapshot-data3/part-00000-842017c2-3e02-44b5-a3d6-5b9ae1745045-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/snapshot-data3/part-00000-842017c2-3e02-44b5-a3d6-5b9ae1745045-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/snapshot-data3/part-00000-842017c2-3e02-44b5-a3d6-5b9ae1745045-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/snapshot-data3/part-00000-cb078bc1-0aeb-46ed-9cf8-74a843b32c8c-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/snapshot-data3/part-00000-cb078bc1-0aeb-46ed-9cf8-74a843b32c8c-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/snapshot-data3/part-00000-cb078bc1-0aeb-46ed-9cf8-74a843b32c8c-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/snapshot-data3/part-00000-cb078bc1-0aeb-46ed-9cf8-74a843b32c8c-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/snapshot-data3/part-00001-34c8c673-3f44-4fa7-b94e-07357ec28a7d-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/snapshot-data3/part-00001-34c8c673-3f44-4fa7-b94e-07357ec28a7d-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/snapshot-data3/part-00001-34c8c673-3f44-4fa7-b94e-07357ec28a7d-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/snapshot-data3/part-00001-34c8c673-3f44-4fa7-b94e-07357ec28a7d-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/snapshot-data3/part-00001-9bf4b8f8-1b95-411b-bf10-28dc03aa9d2f-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/snapshot-data3/part-00001-9bf4b8f8-1b95-411b-bf10-28dc03aa9d2f-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/snapshot-data3/part-00001-9bf4b8f8-1b95-411b-bf10-28dc03aa9d2f-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/snapshot-data3/part-00001-9bf4b8f8-1b95-411b-bf10-28dc03aa9d2f-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/snapshot-data3/part-00001-b8249b87-0b7a-4461-8a8a-fa958802b523-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/snapshot-data3/part-00001-b8249b87-0b7a-4461-8a8a-fa958802b523-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/snapshot-data3/part-00001-b8249b87-0b7a-4461-8a8a-fa958802b523-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/snapshot-data3/part-00001-b8249b87-0b7a-4461-8a8a-fa958802b523-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/snapshot-data3/part-00001-e62ca5a1-923c-4ee6-998b-c61d1cfb0b1c-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/snapshot-data3/part-00001-e62ca5a1-923c-4ee6-998b-c61d1cfb0b1c-c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/snapshot-data3/part-00001-e62ca5a1-923c-4ee6-998b-c61d1cfb0b1c-c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/snapshot-data3/part-00001-e62ca5a1-923c-4ee6-998b-c61d1cfb0b1c-c000.snappy.parquet diff --git a/presto-delta/src/test/resources/delta_v1/test-lowercase/.part-00000-202423c0-10bd-4dab-bff4-ac3e2338bfd8-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-lowercase/.part-00000-202423c0-10bd-4dab-bff4-ac3e2338bfd8-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..1ce0152421782 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-lowercase/.part-00000-202423c0-10bd-4dab-bff4-ac3e2338bfd8-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-lowercase/.part-00002-b18c779a-23dd-4e66-b070-1ff779001b75-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-lowercase/.part-00002-b18c779a-23dd-4e66-b070-1ff779001b75-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..f6b40e4581ae3 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-lowercase/.part-00002-b18c779a-23dd-4e66-b070-1ff779001b75-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-lowercase/.part-00005-6521d2ed-6361-4bbf-9ad0-688ea20f5e70-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-lowercase/.part-00005-6521d2ed-6361-4bbf-9ad0-688ea20f5e70-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..22bd00b06225c Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-lowercase/.part-00005-6521d2ed-6361-4bbf-9ad0-688ea20f5e70-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-lowercase/.part-00007-dfc8bc83-04f4-4f5f-8bd4-e9be33a8510a-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-lowercase/.part-00007-dfc8bc83-04f4-4f5f-8bd4-e9be33a8510a-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..28b5455d2bfa4 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-lowercase/.part-00007-dfc8bc83-04f4-4f5f-8bd4-e9be33a8510a-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-lowercase/_delta_log/.00000000000000000000.json.crc b/presto-delta/src/test/resources/delta_v1/test-lowercase/_delta_log/.00000000000000000000.json.crc new file mode 100644 index 0000000000000..bc9d7f0529ebb Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-lowercase/_delta_log/.00000000000000000000.json.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-lowercase/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v1/test-lowercase/_delta_log/00000000000000000000.json new file mode 100644 index 0000000000000..a6222dfd160a1 --- /dev/null +++ b/presto-delta/src/test/resources/delta_v1/test-lowercase/_delta_log/00000000000000000000.json @@ -0,0 +1,6 @@ +{"commitInfo":{"timestamp":1720604683943,"operation":"WRITE","operationParameters":{"mode":"Overwrite","partitionBy":"[]"},"isolationLevel":"Serializable","isBlindAppend":false,"operationMetrics":{"numFiles":"4","numOutputRows":"3","numOutputBytes":"3576"},"engineInfo":"Apache-Spark/3.5.1 Delta-Lake/3.2.0","txnId":"3ddd6803-2bbd-4c85-b5ed-55ba8d8870cb"}} +{"metaData":{"id":"ae466341-2b9e-463d-9109-7bf47c748e49","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"id\",\"type\":\"long\",\"nullable\":true,\"metadata\":{}},{\"name\":\"ucolumnname\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}},{\"name\":\"lcolumnname\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":[],"configuration":{},"createdTime":1720604672466}} +{"protocol":{"minReaderVersion":1,"minWriterVersion":2}} +{"add":{"path":"part-00002-b18c779a-23dd-4e66-b070-1ff779001b75-c000.snappy.parquet","partitionValues":{},"size":1029,"modificationTime":1720604682052,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":1,\"ucolumnname\":\"column1\",\"lcolumnname\":\"column1\"},\"maxValues\":{\"id\":1,\"ucolumnname\":\"column1\",\"lcolumnname\":\"column1\"},\"nullCount\":{\"id\":0,\"ucolumnname\":0,\"lcolumnname\":0}}"}} +{"add":{"path":"part-00005-6521d2ed-6361-4bbf-9ad0-688ea20f5e70-c000.snappy.parquet","partitionValues":{},"size":1029,"modificationTime":1720604682052,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":2,\"ucolumnname\":\"column2\",\"lcolumnname\":\"column2\"},\"maxValues\":{\"id\":2,\"ucolumnname\":\"column2\",\"lcolumnname\":\"column2\"},\"nullCount\":{\"id\":0,\"ucolumnname\":0,\"lcolumnname\":0}}"}} +{"add":{"path":"part-00007-dfc8bc83-04f4-4f5f-8bd4-e9be33a8510a-c000.snappy.parquet","partitionValues":{},"size":1029,"modificationTime":1720604682052,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":3,\"ucolumnname\":\"column3\",\"lcolumnname\":\"column3\"},\"maxValues\":{\"id\":3,\"ucolumnname\":\"column3\",\"lcolumnname\":\"column3\"},\"nullCount\":{\"id\":0,\"ucolumnname\":0,\"lcolumnname\":0}}"}} diff --git a/presto-delta/src/test/resources/delta_v1/test-lowercase/part-00000-202423c0-10bd-4dab-bff4-ac3e2338bfd8-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-lowercase/part-00000-202423c0-10bd-4dab-bff4-ac3e2338bfd8-c000.snappy.parquet new file mode 100644 index 0000000000000..5ce615c792163 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-lowercase/part-00000-202423c0-10bd-4dab-bff4-ac3e2338bfd8-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-lowercase/part-00002-b18c779a-23dd-4e66-b070-1ff779001b75-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-lowercase/part-00002-b18c779a-23dd-4e66-b070-1ff779001b75-c000.snappy.parquet new file mode 100644 index 0000000000000..55c8d1afb7194 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-lowercase/part-00002-b18c779a-23dd-4e66-b070-1ff779001b75-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-lowercase/part-00005-6521d2ed-6361-4bbf-9ad0-688ea20f5e70-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-lowercase/part-00005-6521d2ed-6361-4bbf-9ad0-688ea20f5e70-c000.snappy.parquet new file mode 100644 index 0000000000000..2c008c038fb8f Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-lowercase/part-00005-6521d2ed-6361-4bbf-9ad0-688ea20f5e70-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-lowercase/part-00007-dfc8bc83-04f4-4f5f-8bd4-e9be33a8510a-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-lowercase/part-00007-dfc8bc83-04f4-4f5f-8bd4-e9be33a8510a-c000.snappy.parquet new file mode 100644 index 0000000000000..39a263664e5e0 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-lowercase/part-00007-dfc8bc83-04f4-4f5f-8bd4-e9be33a8510a-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/_delta_log/.00000000000000000000.json.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/_delta_log/.00000000000000000000.json.crc new file mode 100644 index 0000000000000..4350b218cbd82 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/_delta_log/.00000000000000000000.json.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/_delta_log/00000000000000000000.json new file mode 100644 index 0000000000000..18cd78288308f --- /dev/null +++ b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/_delta_log/00000000000000000000.json @@ -0,0 +1,16 @@ +{"commitInfo":{"timestamp":1713949735632,"operation":"WRITE","operationParameters":{"mode":"Overwrite","partitionBy":"[\"birth_year\"]"},"isolationLevel":"Serializable","isBlindAppend":false,"operationMetrics":{"numFiles":"13","numOutputRows":"14","numOutputBytes":"5881"},"engineInfo":"Apache-Spark/3.5.1 Delta-Lake/3.1.0","txnId":"6c62544f-4e4a-4b87-a9aa-79028054d107"}} +{"metaData":{"id":"39e6c502-9bbf-462a-8ce1-2c58577eab13","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"id\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"birth_year\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":["birth_year"],"configuration":{},"createdTime":1713949734065}} +{"protocol":{"minReaderVersion":1,"minWriterVersion":2}} +{"add":{"path":"birth_year=1991/part-00000-01e41ef4-c5f0-4c25-a70a-0bf797e4021e.c000.snappy.parquet","partitionValues":{"birth_year":"1991"},"size":457,"modificationTime":1713949735279,"dataChange":true,"stats":"{\"numRecords\":2,\"minValues\":{\"id\":5},\"maxValues\":{\"id\":14},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"birth_year=1989/part-00001-52178ba6-0f7b-42f3-8c16-35b001e487d7.c000.snappy.parquet","partitionValues":{"birth_year":"1989"},"size":452,"modificationTime":1713949735279,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":12},\"maxValues\":{\"id\":12},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"birth_year=1991/part-00001-3d845a07-363d-4712-9494-8a44353ebf16.c000.snappy.parquet","partitionValues":{"birth_year":"1991"},"size":452,"modificationTime":1713949735371,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":7},\"maxValues\":{\"id\":7},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"birth_year=1981/part-00002-84127988-1dfb-4051-929f-4cd9d87572c0.c000.snappy.parquet","partitionValues":{"birth_year":"1981"},"size":452,"modificationTime":1713949735279,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":8},\"maxValues\":{\"id\":8},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"birth_year=1989/part-00002-bfef93f3-f896-4a83-87bd-619b80c60a38.c000.snappy.parquet","partitionValues":{"birth_year":"1989"},"size":452,"modificationTime":1713949735347,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":1},\"maxValues\":{\"id\":1},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"birth_year=1985/part-00003-793e9573-2603-4a3d-ad36-24f5e1199c70.c000.snappy.parquet","partitionValues":{"birth_year":"1985"},"size":452,"modificationTime":1713949735279,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":11},\"maxValues\":{\"id\":11},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"birth_year=1999/part-00003-00746a95-8d85-4916-a594-4bde8f6fda5d.c000.snappy.parquet","partitionValues":{"birth_year":"1999"},"size":452,"modificationTime":1713949735358,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":4},\"maxValues\":{\"id\":4},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"birth_year=1985/part-00004-667b57bd-4960-450d-b445-63ec7dbd0c5e.c000.snappy.parquet","partitionValues":{"birth_year":"1985"},"size":452,"modificationTime":1713949735279,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":3},\"maxValues\":{\"id\":3},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"birth_year=1991/part-00004-c22f1d98-7785-4b6c-94d4-a022d6015f13.c000.snappy.parquet","partitionValues":{"birth_year":"1991"},"size":452,"modificationTime":1713949735370,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":6},\"maxValues\":{\"id\":6},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"birth_year=1993/part-00005-878d1d0c-6f7b-4a16-b8e1-2acba456f9ac.c000.snappy.parquet","partitionValues":{"birth_year":"1993"},"size":452,"modificationTime":1713949735279,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":10},\"maxValues\":{\"id\":10},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"birth_year=1994/part-00005-d610330e-db0e-42d9-9636-266d237e4724.c000.snappy.parquet","partitionValues":{"birth_year":"1994"},"size":452,"modificationTime":1713949735350,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":9},\"maxValues\":{\"id\":9},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"birth_year=1985/part-00006-bd18dcba-5d95-4555-88f1-1f8da33c04b3.c000.snappy.parquet","partitionValues":{"birth_year":"1985"},"size":452,"modificationTime":1713949735279,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":13},\"maxValues\":{\"id\":13},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"birth_year=1986/part-00006-5b9a2cd1-bacd-44f7-a017-b279c8ad7d27.c000.snappy.parquet","partitionValues":{"birth_year":"1986"},"size":452,"modificationTime":1713949735350,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":2},\"maxValues\":{\"id\":2},\"nullCount\":{\"id\":0}}"}} diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1981/.part-00002-84127988-1dfb-4051-929f-4cd9d87572c0.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1981/.part-00002-84127988-1dfb-4051-929f-4cd9d87572c0.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..55b9dc0a47b0b Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1981/.part-00002-84127988-1dfb-4051-929f-4cd9d87572c0.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1981/part-00002-84127988-1dfb-4051-929f-4cd9d87572c0.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1981/part-00002-84127988-1dfb-4051-929f-4cd9d87572c0.c000.snappy.parquet new file mode 100644 index 0000000000000..d83158bbb92c9 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1981/part-00002-84127988-1dfb-4051-929f-4cd9d87572c0.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1985/.part-00003-793e9573-2603-4a3d-ad36-24f5e1199c70.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1985/.part-00003-793e9573-2603-4a3d-ad36-24f5e1199c70.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..8da7a296287f7 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1985/.part-00003-793e9573-2603-4a3d-ad36-24f5e1199c70.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1985/.part-00004-667b57bd-4960-450d-b445-63ec7dbd0c5e.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1985/.part-00004-667b57bd-4960-450d-b445-63ec7dbd0c5e.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..99a06073dbed1 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1985/.part-00004-667b57bd-4960-450d-b445-63ec7dbd0c5e.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1985/.part-00006-bd18dcba-5d95-4555-88f1-1f8da33c04b3.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1985/.part-00006-bd18dcba-5d95-4555-88f1-1f8da33c04b3.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..0e6b01089dd70 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1985/.part-00006-bd18dcba-5d95-4555-88f1-1f8da33c04b3.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1985/part-00003-793e9573-2603-4a3d-ad36-24f5e1199c70.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1985/part-00003-793e9573-2603-4a3d-ad36-24f5e1199c70.c000.snappy.parquet new file mode 100644 index 0000000000000..63cd5597a1114 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1985/part-00003-793e9573-2603-4a3d-ad36-24f5e1199c70.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1985/part-00004-667b57bd-4960-450d-b445-63ec7dbd0c5e.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1985/part-00004-667b57bd-4960-450d-b445-63ec7dbd0c5e.c000.snappy.parquet new file mode 100644 index 0000000000000..953eccc415b54 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1985/part-00004-667b57bd-4960-450d-b445-63ec7dbd0c5e.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1985/part-00006-bd18dcba-5d95-4555-88f1-1f8da33c04b3.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1985/part-00006-bd18dcba-5d95-4555-88f1-1f8da33c04b3.c000.snappy.parquet new file mode 100644 index 0000000000000..926004eefd609 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1985/part-00006-bd18dcba-5d95-4555-88f1-1f8da33c04b3.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1986/.part-00006-5b9a2cd1-bacd-44f7-a017-b279c8ad7d27.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1986/.part-00006-5b9a2cd1-bacd-44f7-a017-b279c8ad7d27.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..27983f4d2c7a2 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1986/.part-00006-5b9a2cd1-bacd-44f7-a017-b279c8ad7d27.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1986/part-00006-5b9a2cd1-bacd-44f7-a017-b279c8ad7d27.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1986/part-00006-5b9a2cd1-bacd-44f7-a017-b279c8ad7d27.c000.snappy.parquet new file mode 100644 index 0000000000000..e3ddea0c540d3 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1986/part-00006-5b9a2cd1-bacd-44f7-a017-b279c8ad7d27.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1989/.part-00001-52178ba6-0f7b-42f3-8c16-35b001e487d7.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1989/.part-00001-52178ba6-0f7b-42f3-8c16-35b001e487d7.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..fba33db5219ff Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1989/.part-00001-52178ba6-0f7b-42f3-8c16-35b001e487d7.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1989/.part-00002-bfef93f3-f896-4a83-87bd-619b80c60a38.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1989/.part-00002-bfef93f3-f896-4a83-87bd-619b80c60a38.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..37401db045dee Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1989/.part-00002-bfef93f3-f896-4a83-87bd-619b80c60a38.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1989/part-00001-52178ba6-0f7b-42f3-8c16-35b001e487d7.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1989/part-00001-52178ba6-0f7b-42f3-8c16-35b001e487d7.c000.snappy.parquet new file mode 100644 index 0000000000000..f43d6b058a575 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1989/part-00001-52178ba6-0f7b-42f3-8c16-35b001e487d7.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1989/part-00002-bfef93f3-f896-4a83-87bd-619b80c60a38.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1989/part-00002-bfef93f3-f896-4a83-87bd-619b80c60a38.c000.snappy.parquet new file mode 100644 index 0000000000000..735e06aee6e02 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1989/part-00002-bfef93f3-f896-4a83-87bd-619b80c60a38.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1991/.part-00000-01e41ef4-c5f0-4c25-a70a-0bf797e4021e.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1991/.part-00000-01e41ef4-c5f0-4c25-a70a-0bf797e4021e.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..19366d8d18e07 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1991/.part-00000-01e41ef4-c5f0-4c25-a70a-0bf797e4021e.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1991/.part-00001-3d845a07-363d-4712-9494-8a44353ebf16.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1991/.part-00001-3d845a07-363d-4712-9494-8a44353ebf16.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..f5e8e8322d5ae Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1991/.part-00001-3d845a07-363d-4712-9494-8a44353ebf16.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1991/.part-00004-c22f1d98-7785-4b6c-94d4-a022d6015f13.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1991/.part-00004-c22f1d98-7785-4b6c-94d4-a022d6015f13.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..82d49016ef1f5 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1991/.part-00004-c22f1d98-7785-4b6c-94d4-a022d6015f13.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1991/part-00000-01e41ef4-c5f0-4c25-a70a-0bf797e4021e.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1991/part-00000-01e41ef4-c5f0-4c25-a70a-0bf797e4021e.c000.snappy.parquet new file mode 100644 index 0000000000000..5dfb638edffcb Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1991/part-00000-01e41ef4-c5f0-4c25-a70a-0bf797e4021e.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1991/part-00001-3d845a07-363d-4712-9494-8a44353ebf16.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1991/part-00001-3d845a07-363d-4712-9494-8a44353ebf16.c000.snappy.parquet new file mode 100644 index 0000000000000..883c982342844 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1991/part-00001-3d845a07-363d-4712-9494-8a44353ebf16.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1991/part-00004-c22f1d98-7785-4b6c-94d4-a022d6015f13.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1991/part-00004-c22f1d98-7785-4b6c-94d4-a022d6015f13.c000.snappy.parquet new file mode 100644 index 0000000000000..d3495def672a0 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1991/part-00004-c22f1d98-7785-4b6c-94d4-a022d6015f13.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1993/.part-00005-878d1d0c-6f7b-4a16-b8e1-2acba456f9ac.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1993/.part-00005-878d1d0c-6f7b-4a16-b8e1-2acba456f9ac.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..a78950ece2814 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1993/.part-00005-878d1d0c-6f7b-4a16-b8e1-2acba456f9ac.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1993/part-00005-878d1d0c-6f7b-4a16-b8e1-2acba456f9ac.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1993/part-00005-878d1d0c-6f7b-4a16-b8e1-2acba456f9ac.c000.snappy.parquet new file mode 100644 index 0000000000000..479bbd78a1846 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1993/part-00005-878d1d0c-6f7b-4a16-b8e1-2acba456f9ac.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1994/.part-00005-d610330e-db0e-42d9-9636-266d237e4724.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1994/.part-00005-d610330e-db0e-42d9-9636-266d237e4724.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..f963a031d1dd2 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1994/.part-00005-d610330e-db0e-42d9-9636-266d237e4724.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1994/part-00005-d610330e-db0e-42d9-9636-266d237e4724.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1994/part-00005-d610330e-db0e-42d9-9636-266d237e4724.c000.snappy.parquet new file mode 100644 index 0000000000000..abe1ad32eba96 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1994/part-00005-d610330e-db0e-42d9-9636-266d237e4724.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1999/.part-00003-00746a95-8d85-4916-a594-4bde8f6fda5d.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1999/.part-00003-00746a95-8d85-4916-a594-4bde8f6fda5d.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..2d4c10d33c6c2 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1999/.part-00003-00746a95-8d85-4916-a594-4bde8f6fda5d.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1999/part-00003-00746a95-8d85-4916-a594-4bde8f6fda5d.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1999/part-00003-00746a95-8d85-4916-a594-4bde8f6fda5d.c000.snappy.parquet new file mode 100644 index 0000000000000..98b3254b3c362 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-lowercase/birth_year=1999/part-00003-00746a95-8d85-4916-a594-4bde8f6fda5d.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1981/.part-00002-4fa09d34-fc12-47ac-b571-8e3cec65b42d.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1981/.part-00002-4fa09d34-fc12-47ac-b571-8e3cec65b42d.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..b830a4464fd58 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1981/.part-00002-4fa09d34-fc12-47ac-b571-8e3cec65b42d.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1981/part-00002-4fa09d34-fc12-47ac-b571-8e3cec65b42d.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1981/part-00002-4fa09d34-fc12-47ac-b571-8e3cec65b42d.c000.snappy.parquet new file mode 100644 index 0000000000000..576ee0138f063 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1981/part-00002-4fa09d34-fc12-47ac-b571-8e3cec65b42d.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1985/.part-00003-6989c40a-2ab2-4ac3-815a-c43b7c4d491a.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1985/.part-00003-6989c40a-2ab2-4ac3-815a-c43b7c4d491a.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..bb6778095832b Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1985/.part-00003-6989c40a-2ab2-4ac3-815a-c43b7c4d491a.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1985/.part-00004-4550f7f1-1469-4caa-bc69-13da36d984aa.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1985/.part-00004-4550f7f1-1469-4caa-bc69-13da36d984aa.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..e9df244de538f Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1985/.part-00004-4550f7f1-1469-4caa-bc69-13da36d984aa.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1985/.part-00006-d01a6271-4c3a-4b0c-b723-eb91a4e8bc5a.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1985/.part-00006-d01a6271-4c3a-4b0c-b723-eb91a4e8bc5a.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..48c488bcb15db Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1985/.part-00006-d01a6271-4c3a-4b0c-b723-eb91a4e8bc5a.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1985/part-00003-6989c40a-2ab2-4ac3-815a-c43b7c4d491a.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1985/part-00003-6989c40a-2ab2-4ac3-815a-c43b7c4d491a.c000.snappy.parquet new file mode 100644 index 0000000000000..0b0cb6c70cedd Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1985/part-00003-6989c40a-2ab2-4ac3-815a-c43b7c4d491a.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1985/part-00004-4550f7f1-1469-4caa-bc69-13da36d984aa.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1985/part-00004-4550f7f1-1469-4caa-bc69-13da36d984aa.c000.snappy.parquet new file mode 100644 index 0000000000000..2cbc15caa5de5 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1985/part-00004-4550f7f1-1469-4caa-bc69-13da36d984aa.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1985/part-00006-d01a6271-4c3a-4b0c-b723-eb91a4e8bc5a.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1985/part-00006-d01a6271-4c3a-4b0c-b723-eb91a4e8bc5a.c000.snappy.parquet new file mode 100644 index 0000000000000..31062d5e113a3 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1985/part-00006-d01a6271-4c3a-4b0c-b723-eb91a4e8bc5a.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1986/.part-00006-d7a37fad-eaf7-43a7-8f25-6a2b63155bf5.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1986/.part-00006-d7a37fad-eaf7-43a7-8f25-6a2b63155bf5.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..04c6ef3a58d06 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1986/.part-00006-d7a37fad-eaf7-43a7-8f25-6a2b63155bf5.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1986/part-00006-d7a37fad-eaf7-43a7-8f25-6a2b63155bf5.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1986/part-00006-d7a37fad-eaf7-43a7-8f25-6a2b63155bf5.c000.snappy.parquet new file mode 100644 index 0000000000000..1aa0d8f7684bc Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1986/part-00006-d7a37fad-eaf7-43a7-8f25-6a2b63155bf5.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1989/.part-00001-a65a7a56-3eb1-4886-bd24-1cbf76b9167e.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1989/.part-00001-a65a7a56-3eb1-4886-bd24-1cbf76b9167e.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..857d7a4fdb4b0 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1989/.part-00001-a65a7a56-3eb1-4886-bd24-1cbf76b9167e.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1989/.part-00002-a0b7e955-f3e8-4f06-932d-b0b40bc05252.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1989/.part-00002-a0b7e955-f3e8-4f06-932d-b0b40bc05252.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..1e69ae3ee6876 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1989/.part-00002-a0b7e955-f3e8-4f06-932d-b0b40bc05252.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1989/part-00001-a65a7a56-3eb1-4886-bd24-1cbf76b9167e.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1989/part-00001-a65a7a56-3eb1-4886-bd24-1cbf76b9167e.c000.snappy.parquet new file mode 100644 index 0000000000000..c009223d14bdd Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1989/part-00001-a65a7a56-3eb1-4886-bd24-1cbf76b9167e.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1989/part-00002-a0b7e955-f3e8-4f06-932d-b0b40bc05252.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1989/part-00002-a0b7e955-f3e8-4f06-932d-b0b40bc05252.c000.snappy.parquet new file mode 100644 index 0000000000000..eabd4cca0fc92 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1989/part-00002-a0b7e955-f3e8-4f06-932d-b0b40bc05252.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1991/.part-00000-ea50011b-7810-4e10-ab00-aa8463afc93c.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1991/.part-00000-ea50011b-7810-4e10-ab00-aa8463afc93c.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..65f4319e61a46 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1991/.part-00000-ea50011b-7810-4e10-ab00-aa8463afc93c.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1991/.part-00001-ba244fcb-eded-4f94-9268-dfbde3cc20c1.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1991/.part-00001-ba244fcb-eded-4f94-9268-dfbde3cc20c1.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..8530462fb5985 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1991/.part-00001-ba244fcb-eded-4f94-9268-dfbde3cc20c1.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1991/.part-00004-9042e69b-b6b1-4c2b-977e-c1ad18e0e881.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1991/.part-00004-9042e69b-b6b1-4c2b-977e-c1ad18e0e881.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..d6ec5b120f01f Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1991/.part-00004-9042e69b-b6b1-4c2b-977e-c1ad18e0e881.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1991/part-00000-ea50011b-7810-4e10-ab00-aa8463afc93c.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1991/part-00000-ea50011b-7810-4e10-ab00-aa8463afc93c.c000.snappy.parquet new file mode 100644 index 0000000000000..1aeda3fe7aacd Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1991/part-00000-ea50011b-7810-4e10-ab00-aa8463afc93c.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1991/part-00001-ba244fcb-eded-4f94-9268-dfbde3cc20c1.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1991/part-00001-ba244fcb-eded-4f94-9268-dfbde3cc20c1.c000.snappy.parquet new file mode 100644 index 0000000000000..356c504a1e141 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1991/part-00001-ba244fcb-eded-4f94-9268-dfbde3cc20c1.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1991/part-00004-9042e69b-b6b1-4c2b-977e-c1ad18e0e881.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1991/part-00004-9042e69b-b6b1-4c2b-977e-c1ad18e0e881.c000.snappy.parquet new file mode 100644 index 0000000000000..2415f3b8da65a Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1991/part-00004-9042e69b-b6b1-4c2b-977e-c1ad18e0e881.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1993/.part-00005-5e5fd8c6-30ba-4d3a-a0c5-3aa520101b6e.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1993/.part-00005-5e5fd8c6-30ba-4d3a-a0c5-3aa520101b6e.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..33fbc90027efd Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1993/.part-00005-5e5fd8c6-30ba-4d3a-a0c5-3aa520101b6e.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1993/part-00005-5e5fd8c6-30ba-4d3a-a0c5-3aa520101b6e.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1993/part-00005-5e5fd8c6-30ba-4d3a-a0c5-3aa520101b6e.c000.snappy.parquet new file mode 100644 index 0000000000000..a335d05bfa652 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1993/part-00005-5e5fd8c6-30ba-4d3a-a0c5-3aa520101b6e.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1994/.part-00005-1f25d9f3-3e57-4fd2-aa46-071750852762.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1994/.part-00005-1f25d9f3-3e57-4fd2-aa46-071750852762.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..8779bb7f845f3 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1994/.part-00005-1f25d9f3-3e57-4fd2-aa46-071750852762.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1994/part-00005-1f25d9f3-3e57-4fd2-aa46-071750852762.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1994/part-00005-1f25d9f3-3e57-4fd2-aa46-071750852762.c000.snappy.parquet new file mode 100644 index 0000000000000..b578329e4828c Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1994/part-00005-1f25d9f3-3e57-4fd2-aa46-071750852762.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1999/.part-00003-84dfa6d6-7e0a-41e8-a12b-077ac23cf60c.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1999/.part-00003-84dfa6d6-7e0a-41e8-a12b-077ac23cf60c.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..37da5eb04ab6a Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1999/.part-00003-84dfa6d6-7e0a-41e8-a12b-077ac23cf60c.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1999/part-00003-84dfa6d6-7e0a-41e8-a12b-077ac23cf60c.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1999/part-00003-84dfa6d6-7e0a-41e8-a12b-077ac23cf60c.c000.snappy.parquet new file mode 100644 index 0000000000000..074e6073f8766 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/BIRTH_YEAR=1999/part-00003-84dfa6d6-7e0a-41e8-a12b-077ac23cf60c.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/_delta_log/.00000000000000000000.json.crc b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/_delta_log/.00000000000000000000.json.crc new file mode 100644 index 0000000000000..807af85cfe01b Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/_delta_log/.00000000000000000000.json.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/_delta_log/00000000000000000000.json new file mode 100644 index 0000000000000..cc89ce4e9a0e6 --- /dev/null +++ b/presto-delta/src/test/resources/delta_v1/test-partitions-uppercase/_delta_log/00000000000000000000.json @@ -0,0 +1,16 @@ +{"commitInfo":{"timestamp":1713949568446,"operation":"WRITE","operationParameters":{"mode":"Overwrite","partitionBy":"[\"BIRTH_YEAR\"]"},"isolationLevel":"Serializable","isBlindAppend":false,"operationMetrics":{"numFiles":"13","numOutputRows":"14","numOutputBytes":"5881"},"engineInfo":"Apache-Spark/3.5.1 Delta-Lake/3.1.0","txnId":"ae19a6ad-d0b3-4a68-bc8c-ff11795d4caa"}} +{"metaData":{"id":"ef92aff3-d849-4439-9e83-0a2b81c1621c","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"id\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"BIRTH_YEAR\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":["BIRTH_YEAR"],"configuration":{},"createdTime":1713949566798}} +{"protocol":{"minReaderVersion":1,"minWriterVersion":2}} +{"add":{"path":"BIRTH_YEAR=1991/part-00000-ea50011b-7810-4e10-ab00-aa8463afc93c.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1991"},"size":457,"modificationTime":1713949568033,"dataChange":true,"stats":"{\"numRecords\":2,\"minValues\":{\"id\":5},\"maxValues\":{\"id\":14},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"BIRTH_YEAR=1989/part-00001-a65a7a56-3eb1-4886-bd24-1cbf76b9167e.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1989"},"size":452,"modificationTime":1713949568033,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":12},\"maxValues\":{\"id\":12},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"BIRTH_YEAR=1991/part-00001-ba244fcb-eded-4f94-9268-dfbde3cc20c1.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1991"},"size":452,"modificationTime":1713949568120,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":7},\"maxValues\":{\"id\":7},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"BIRTH_YEAR=1981/part-00002-4fa09d34-fc12-47ac-b571-8e3cec65b42d.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1981"},"size":452,"modificationTime":1713949568033,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":8},\"maxValues\":{\"id\":8},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"BIRTH_YEAR=1989/part-00002-a0b7e955-f3e8-4f06-932d-b0b40bc05252.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1989"},"size":452,"modificationTime":1713949568083,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":1},\"maxValues\":{\"id\":1},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"BIRTH_YEAR=1985/part-00003-6989c40a-2ab2-4ac3-815a-c43b7c4d491a.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1985"},"size":452,"modificationTime":1713949568033,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":11},\"maxValues\":{\"id\":11},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"BIRTH_YEAR=1999/part-00003-84dfa6d6-7e0a-41e8-a12b-077ac23cf60c.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1999"},"size":452,"modificationTime":1713949568133,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":4},\"maxValues\":{\"id\":4},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"BIRTH_YEAR=1985/part-00004-4550f7f1-1469-4caa-bc69-13da36d984aa.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1985"},"size":452,"modificationTime":1713949568034,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":3},\"maxValues\":{\"id\":3},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"BIRTH_YEAR=1991/part-00004-9042e69b-b6b1-4c2b-977e-c1ad18e0e881.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1991"},"size":452,"modificationTime":1713949568108,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":6},\"maxValues\":{\"id\":6},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"BIRTH_YEAR=1993/part-00005-5e5fd8c6-30ba-4d3a-a0c5-3aa520101b6e.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1993"},"size":452,"modificationTime":1713949568033,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":10},\"maxValues\":{\"id\":10},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"BIRTH_YEAR=1994/part-00005-1f25d9f3-3e57-4fd2-aa46-071750852762.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1994"},"size":452,"modificationTime":1713949568084,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":9},\"maxValues\":{\"id\":9},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"BIRTH_YEAR=1985/part-00006-d01a6271-4c3a-4b0c-b723-eb91a4e8bc5a.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1985"},"size":452,"modificationTime":1713949568033,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":13},\"maxValues\":{\"id\":13},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"BIRTH_YEAR=1986/part-00006-d7a37fad-eaf7-43a7-8f25-6a2b63155bf5.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1986"},"size":452,"modificationTime":1713949568129,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":2},\"maxValues\":{\"id\":2},\"nullCount\":{\"id\":0}}"}} diff --git a/presto-delta/src/test/resources/delta_v1/test-uppercase/.part-00000-b13d0db9-2ad3-41ae-bceb-0b3951fed23e-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-uppercase/.part-00000-b13d0db9-2ad3-41ae-bceb-0b3951fed23e-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..98b264362c990 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-uppercase/.part-00000-b13d0db9-2ad3-41ae-bceb-0b3951fed23e-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-uppercase/.part-00002-6ac325b3-2e9c-4a17-8f8c-bc2704387397-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-uppercase/.part-00002-6ac325b3-2e9c-4a17-8f8c-bc2704387397-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..797eb875a42ea Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-uppercase/.part-00002-6ac325b3-2e9c-4a17-8f8c-bc2704387397-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-uppercase/.part-00005-a8cca1e4-a3de-4c6e-9882-22a7383e7a8a-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-uppercase/.part-00005-a8cca1e4-a3de-4c6e-9882-22a7383e7a8a-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..143ce3199112d Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-uppercase/.part-00005-a8cca1e4-a3de-4c6e-9882-22a7383e7a8a-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-uppercase/.part-00007-1c937176-1eec-48f4-b683-1e0b0df301da-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/test-uppercase/.part-00007-1c937176-1eec-48f4-b683-1e0b0df301da-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..cd8cf363220a2 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-uppercase/.part-00007-1c937176-1eec-48f4-b683-1e0b0df301da-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-uppercase/_delta_log/.00000000000000000000.json.crc b/presto-delta/src/test/resources/delta_v1/test-uppercase/_delta_log/.00000000000000000000.json.crc new file mode 100644 index 0000000000000..bd52e42a2d5a3 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-uppercase/_delta_log/.00000000000000000000.json.crc differ diff --git a/presto-delta/src/test/resources/delta_v1/test-uppercase/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v1/test-uppercase/_delta_log/00000000000000000000.json new file mode 100644 index 0000000000000..8628a0579c0fc --- /dev/null +++ b/presto-delta/src/test/resources/delta_v1/test-uppercase/_delta_log/00000000000000000000.json @@ -0,0 +1,6 @@ +{"commitInfo":{"timestamp":1720604051552,"operation":"WRITE","operationParameters":{"mode":"Overwrite","partitionBy":"[]"},"isolationLevel":"Serializable","isBlindAppend":false,"operationMetrics":{"numFiles":"4","numOutputRows":"3","numOutputBytes":"3576"},"engineInfo":"Apache-Spark/3.5.1 Delta-Lake/3.2.0","txnId":"8cd43489-9957-41b7-a70b-3a8a10aa7420"}} +{"metaData":{"id":"90f285dc-d571-4247-b16f-b19440adbd58","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"id\",\"type\":\"long\",\"nullable\":true,\"metadata\":{}},{\"name\":\"UCOLUMNNAME\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}},{\"name\":\"lcolumnname\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":[],"configuration":{},"createdTime":1720604042215}} +{"protocol":{"minReaderVersion":1,"minWriterVersion":2}} +{"add":{"path":"part-00002-6ac325b3-2e9c-4a17-8f8c-bc2704387397-c000.snappy.parquet","partitionValues":{},"size":1029,"modificationTime":1720604049873,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":1,\"UCOLUMNNAME\":\"column1\",\"lcolumnname\":\"column1\"},\"maxValues\":{\"id\":1,\"UCOLUMNNAME\":\"column1\",\"lcolumnname\":\"column1\"},\"nullCount\":{\"id\":0,\"UCOLUMNNAME\":0,\"lcolumnname\":0}}"}} +{"add":{"path":"part-00005-a8cca1e4-a3de-4c6e-9882-22a7383e7a8a-c000.snappy.parquet","partitionValues":{},"size":1029,"modificationTime":1720604049873,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":2,\"UCOLUMNNAME\":\"column2\",\"lcolumnname\":\"column2\"},\"maxValues\":{\"id\":2,\"UCOLUMNNAME\":\"column2\",\"lcolumnname\":\"column2\"},\"nullCount\":{\"id\":0,\"UCOLUMNNAME\":0,\"lcolumnname\":0}}"}} +{"add":{"path":"part-00007-1c937176-1eec-48f4-b683-1e0b0df301da-c000.snappy.parquet","partitionValues":{},"size":1029,"modificationTime":1720604049873,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":3,\"UCOLUMNNAME\":\"column3\",\"lcolumnname\":\"column3\"},\"maxValues\":{\"id\":3,\"UCOLUMNNAME\":\"column3\",\"lcolumnname\":\"column3\"},\"nullCount\":{\"id\":0,\"UCOLUMNNAME\":0,\"lcolumnname\":0}}"}} diff --git a/presto-delta/src/test/resources/delta_v1/test-uppercase/part-00000-b13d0db9-2ad3-41ae-bceb-0b3951fed23e-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-uppercase/part-00000-b13d0db9-2ad3-41ae-bceb-0b3951fed23e-c000.snappy.parquet new file mode 100644 index 0000000000000..064016e5fbb34 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-uppercase/part-00000-b13d0db9-2ad3-41ae-bceb-0b3951fed23e-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-uppercase/part-00002-6ac325b3-2e9c-4a17-8f8c-bc2704387397-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-uppercase/part-00002-6ac325b3-2e9c-4a17-8f8c-bc2704387397-c000.snappy.parquet new file mode 100644 index 0000000000000..c9a97ece0409e Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-uppercase/part-00002-6ac325b3-2e9c-4a17-8f8c-bc2704387397-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-uppercase/part-00005-a8cca1e4-a3de-4c6e-9882-22a7383e7a8a-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-uppercase/part-00005-a8cca1e4-a3de-4c6e-9882-22a7383e7a8a-c000.snappy.parquet new file mode 100644 index 0000000000000..b15fcf377459a Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-uppercase/part-00005-a8cca1e4-a3de-4c6e-9882-22a7383e7a8a-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v1/test-uppercase/part-00007-1c937176-1eec-48f4-b683-1e0b0df301da-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/test-uppercase/part-00007-1c937176-1eec-48f4-b683-1e0b0df301da-c000.snappy.parquet new file mode 100644 index 0000000000000..98f46245fa034 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v1/test-uppercase/part-00007-1c937176-1eec-48f4-b683-1e0b0df301da-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/_delta_log/00000000000000000000.json similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/_delta_log/00000000000000000000.json rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/_delta_log/00000000000000000000.json diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/_delta_log/00000000000000000001.json b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/_delta_log/00000000000000000001.json similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/_delta_log/00000000000000000001.json rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/_delta_log/00000000000000000001.json diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part2=0/.part-00000-7bce012e-f358-4a97-91da-55c4d3266fbe.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part2=0/.part-00000-7bce012e-f358-4a97-91da-55c4d3266fbe.c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part2=0/.part-00000-7bce012e-f358-4a97-91da-55c4d3266fbe.c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part2=0/.part-00000-7bce012e-f358-4a97-91da-55c4d3266fbe.c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part2=0/.part-00001-2a830e69-78f3-4d09-9b2c-3bfd9debc2f0.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part2=0/.part-00001-2a830e69-78f3-4d09-9b2c-3bfd9debc2f0.c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part2=0/.part-00001-2a830e69-78f3-4d09-9b2c-3bfd9debc2f0.c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part2=0/.part-00001-2a830e69-78f3-4d09-9b2c-3bfd9debc2f0.c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part2=0/part-00000-7bce012e-f358-4a97-91da-55c4d3266fbe.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part2=0/part-00000-7bce012e-f358-4a97-91da-55c4d3266fbe.c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part2=0/part-00000-7bce012e-f358-4a97-91da-55c4d3266fbe.c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part2=0/part-00000-7bce012e-f358-4a97-91da-55c4d3266fbe.c000.snappy.parquet diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part2=0/part-00001-2a830e69-78f3-4d09-9b2c-3bfd9debc2f0.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part2=0/part-00001-2a830e69-78f3-4d09-9b2c-3bfd9debc2f0.c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part2=0/part-00001-2a830e69-78f3-4d09-9b2c-3bfd9debc2f0.c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part2=0/part-00001-2a830e69-78f3-4d09-9b2c-3bfd9debc2f0.c000.snappy.parquet diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part2=1/.part-00000-82368d1d-588b-487a-be01-16dc85260296.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part2=1/.part-00000-82368d1d-588b-487a-be01-16dc85260296.c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part2=1/.part-00000-82368d1d-588b-487a-be01-16dc85260296.c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part2=1/.part-00000-82368d1d-588b-487a-be01-16dc85260296.c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part2=1/.part-00001-0a72544a-fb83-4eaa-8d62-9e6ab59afa8b.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part2=1/.part-00001-0a72544a-fb83-4eaa-8d62-9e6ab59afa8b.c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part2=1/.part-00001-0a72544a-fb83-4eaa-8d62-9e6ab59afa8b.c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part2=1/.part-00001-0a72544a-fb83-4eaa-8d62-9e6ab59afa8b.c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part2=1/part-00000-82368d1d-588b-487a-be01-16dc85260296.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part2=1/part-00000-82368d1d-588b-487a-be01-16dc85260296.c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part2=1/part-00000-82368d1d-588b-487a-be01-16dc85260296.c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part2=1/part-00000-82368d1d-588b-487a-be01-16dc85260296.c000.snappy.parquet diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part2=1/part-00001-0a72544a-fb83-4eaa-8d62-9e6ab59afa8b.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part2=1/part-00001-0a72544a-fb83-4eaa-8d62-9e6ab59afa8b.c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part2=1/part-00001-0a72544a-fb83-4eaa-8d62-9e6ab59afa8b.c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part2=1/part-00001-0a72544a-fb83-4eaa-8d62-9e6ab59afa8b.c000.snappy.parquet diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part5=0/.part-00000-67b6882e-f49f-4df5-9850-b5e8a72f4917.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=0/.part-00000-67b6882e-f49f-4df5-9850-b5e8a72f4917.c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part5=0/.part-00000-67b6882e-f49f-4df5-9850-b5e8a72f4917.c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=0/.part-00000-67b6882e-f49f-4df5-9850-b5e8a72f4917.c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part5=0/.part-00001-4f02a740-31dc-46c6-bc0e-c19d164ac82d.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=0/.part-00001-4f02a740-31dc-46c6-bc0e-c19d164ac82d.c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part5=0/.part-00001-4f02a740-31dc-46c6-bc0e-c19d164ac82d.c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=0/.part-00001-4f02a740-31dc-46c6-bc0e-c19d164ac82d.c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part5=0/part-00000-67b6882e-f49f-4df5-9850-b5e8a72f4917.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=0/part-00000-67b6882e-f49f-4df5-9850-b5e8a72f4917.c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part5=0/part-00000-67b6882e-f49f-4df5-9850-b5e8a72f4917.c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=0/part-00000-67b6882e-f49f-4df5-9850-b5e8a72f4917.c000.snappy.parquet diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part5=0/part-00001-4f02a740-31dc-46c6-bc0e-c19d164ac82d.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=0/part-00001-4f02a740-31dc-46c6-bc0e-c19d164ac82d.c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part5=0/part-00001-4f02a740-31dc-46c6-bc0e-c19d164ac82d.c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=0/part-00001-4f02a740-31dc-46c6-bc0e-c19d164ac82d.c000.snappy.parquet diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part5=1/.part-00000-8a40c3d2-f658-4131-a17f-388265ab04b7.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=1/.part-00000-8a40c3d2-f658-4131-a17f-388265ab04b7.c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part5=1/.part-00000-8a40c3d2-f658-4131-a17f-388265ab04b7.c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=1/.part-00000-8a40c3d2-f658-4131-a17f-388265ab04b7.c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part5=1/.part-00001-3dcad520-b001-4829-a6e5-3d578b0964f4.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=1/.part-00001-3dcad520-b001-4829-a6e5-3d578b0964f4.c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part5=1/.part-00001-3dcad520-b001-4829-a6e5-3d578b0964f4.c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=1/.part-00001-3dcad520-b001-4829-a6e5-3d578b0964f4.c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part5=1/part-00000-8a40c3d2-f658-4131-a17f-388265ab04b7.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=1/part-00000-8a40c3d2-f658-4131-a17f-388265ab04b7.c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part5=1/part-00000-8a40c3d2-f658-4131-a17f-388265ab04b7.c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=1/part-00000-8a40c3d2-f658-4131-a17f-388265ab04b7.c000.snappy.parquet diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part5=1/part-00001-3dcad520-b001-4829-a6e5-3d578b0964f4.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=1/part-00001-3dcad520-b001-4829-a6e5-3d578b0964f4.c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part5=1/part-00001-3dcad520-b001-4829-a6e5-3d578b0964f4.c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=1/part-00001-3dcad520-b001-4829-a6e5-3d578b0964f4.c000.snappy.parquet diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part5=2/.part-00000-ec6e3a2e-ecbf-4d39-9076-37e523cd62f1.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=2/.part-00000-ec6e3a2e-ecbf-4d39-9076-37e523cd62f1.c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part5=2/.part-00000-ec6e3a2e-ecbf-4d39-9076-37e523cd62f1.c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=2/.part-00000-ec6e3a2e-ecbf-4d39-9076-37e523cd62f1.c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part5=2/.part-00001-e20bae81-3f27-4c5c-aeca-5cfa6b38615c.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=2/.part-00001-e20bae81-3f27-4c5c-aeca-5cfa6b38615c.c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part5=2/.part-00001-e20bae81-3f27-4c5c-aeca-5cfa6b38615c.c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=2/.part-00001-e20bae81-3f27-4c5c-aeca-5cfa6b38615c.c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part5=2/part-00000-ec6e3a2e-ecbf-4d39-9076-37e523cd62f1.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=2/part-00000-ec6e3a2e-ecbf-4d39-9076-37e523cd62f1.c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part5=2/part-00000-ec6e3a2e-ecbf-4d39-9076-37e523cd62f1.c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=2/part-00000-ec6e3a2e-ecbf-4d39-9076-37e523cd62f1.c000.snappy.parquet diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part5=2/part-00001-e20bae81-3f27-4c5c-aeca-5cfa6b38615c.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=2/part-00001-e20bae81-3f27-4c5c-aeca-5cfa6b38615c.c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part5=2/part-00001-e20bae81-3f27-4c5c-aeca-5cfa6b38615c.c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=2/part-00001-e20bae81-3f27-4c5c-aeca-5cfa6b38615c.c000.snappy.parquet diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part5=3/.part-00000-eaf1edf4-b9da-4df8-b957-08583e2a1d1b.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=3/.part-00000-eaf1edf4-b9da-4df8-b957-08583e2a1d1b.c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part5=3/.part-00000-eaf1edf4-b9da-4df8-b957-08583e2a1d1b.c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=3/.part-00000-eaf1edf4-b9da-4df8-b957-08583e2a1d1b.c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part5=3/.part-00001-b9c6b926-a274-4d8e-b882-31c4aac05038.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=3/.part-00001-b9c6b926-a274-4d8e-b882-31c4aac05038.c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part5=3/.part-00001-b9c6b926-a274-4d8e-b882-31c4aac05038.c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=3/.part-00001-b9c6b926-a274-4d8e-b882-31c4aac05038.c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part5=3/part-00000-eaf1edf4-b9da-4df8-b957-08583e2a1d1b.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=3/part-00000-eaf1edf4-b9da-4df8-b957-08583e2a1d1b.c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part5=3/part-00000-eaf1edf4-b9da-4df8-b957-08583e2a1d1b.c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=3/part-00000-eaf1edf4-b9da-4df8-b957-08583e2a1d1b.c000.snappy.parquet diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part5=3/part-00001-b9c6b926-a274-4d8e-b882-31c4aac05038.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=3/part-00001-b9c6b926-a274-4d8e-b882-31c4aac05038.c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part5=3/part-00001-b9c6b926-a274-4d8e-b882-31c4aac05038.c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=3/part-00001-b9c6b926-a274-4d8e-b882-31c4aac05038.c000.snappy.parquet diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part5=4/.part-00000-ce66c2ca-8fdf-48d3-a6e7-5980a370461a.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=4/.part-00000-ce66c2ca-8fdf-48d3-a6e7-5980a370461a.c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part5=4/.part-00000-ce66c2ca-8fdf-48d3-a6e7-5980a370461a.c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=4/.part-00000-ce66c2ca-8fdf-48d3-a6e7-5980a370461a.c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part5=4/.part-00001-5705917d-d837-4d7f-b8c4-f0ada8cf9663.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=4/.part-00001-5705917d-d837-4d7f-b8c4-f0ada8cf9663.c000.snappy.parquet.crc similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part5=4/.part-00001-5705917d-d837-4d7f-b8c4-f0ada8cf9663.c000.snappy.parquet.crc rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=4/.part-00001-5705917d-d837-4d7f-b8c4-f0ada8cf9663.c000.snappy.parquet.crc diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part5=4/part-00000-ce66c2ca-8fdf-48d3-a6e7-5980a370461a.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=4/part-00000-ce66c2ca-8fdf-48d3-a6e7-5980a370461a.c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part5=4/part-00000-ce66c2ca-8fdf-48d3-a6e7-5980a370461a.c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=4/part-00000-ce66c2ca-8fdf-48d3-a6e7-5980a370461a.c000.snappy.parquet diff --git a/presto-delta/src/test/resources/time-travel-partition-changes-b/part5=4/part-00001-5705917d-d837-4d7f-b8c4-f0ada8cf9663.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=4/part-00001-5705917d-d837-4d7f-b8c4-f0ada8cf9663.c000.snappy.parquet similarity index 100% rename from presto-delta/src/test/resources/time-travel-partition-changes-b/part5=4/part-00001-5705917d-d837-4d7f-b8c4-f0ada8cf9663.c000.snappy.parquet rename to presto-delta/src/test/resources/delta_v1/time-travel-partition-changes-b/part5=4/part-00001-5705917d-d837-4d7f-b8c4-f0ada8cf9663.c000.snappy.parquet diff --git a/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/.part-00000-15854bd4-f450-4a20-8a8a-7d914751b230-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/.part-00000-15854bd4-f450-4a20-8a8a-7d914751b230-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..c26ee9c763df7 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/.part-00000-15854bd4-f450-4a20-8a8a-7d914751b230-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/.part-00001-e3388985-08fd-4f28-81d7-c922eb7c0cac-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/.part-00001-e3388985-08fd-4f28-81d7-c922eb7c0cac-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..15a0aa13e38e4 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/.part-00001-e3388985-08fd-4f28-81d7-c922eb7c0cac-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/.part-00002-19206437-7615-4800-bd56-f9d3c596918e-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/.part-00002-19206437-7615-4800-bd56-f9d3c596918e-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..74ea2adf6d7de Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/.part-00002-19206437-7615-4800-bd56-f9d3c596918e-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/.part-00003-93ecd48d-f465-49c4-8abf-83d8e4b0b33b-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/.part-00003-93ecd48d-f465-49c4-8abf-83d8e4b0b33b-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..90296369469ab Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/.part-00003-93ecd48d-f465-49c4-8abf-83d8e4b0b33b-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/.part-00004-4f115879-4c36-4574-addd-463782349ac4-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/.part-00004-4f115879-4c36-4574-addd-463782349ac4-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..6ed5a05cc86c2 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/.part-00004-4f115879-4c36-4574-addd-463782349ac4-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/.part-00005-8f1cbfda-c8a6-4318-b6b6-d9e98a93a41f-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/.part-00005-8f1cbfda-c8a6-4318-b6b6-d9e98a93a41f-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..976d93f50b907 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/.part-00005-8f1cbfda-c8a6-4318-b6b6-d9e98a93a41f-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/.part-00006-7bb84938-7f7d-4f86-83be-3fae8bbdc52a-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/.part-00006-7bb84938-7f7d-4f86-83be-3fae8bbdc52a-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..9b4a7b372af98 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/.part-00006-7bb84938-7f7d-4f86-83be-3fae8bbdc52a-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/_delta_log/.00000000000000000000.json.crc b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/_delta_log/.00000000000000000000.json.crc new file mode 100644 index 0000000000000..8a8fb9aaa0bc6 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/_delta_log/.00000000000000000000.json.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/_delta_log/.00000000000000000001.json.crc b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/_delta_log/.00000000000000000001.json.crc new file mode 100644 index 0000000000000..8aa0ec2af9e7f Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/_delta_log/.00000000000000000001.json.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/_delta_log/00000000000000000000.json new file mode 100644 index 0000000000000..286774cd9851b --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/_delta_log/00000000000000000000.json @@ -0,0 +1,10 @@ +{"commitInfo":{"timestamp":1713871743844,"operation":"WRITE","operationParameters":{"mode":"Overwrite","partitionBy":"[]"},"isolationLevel":"Serializable","isBlindAppend":false,"operationMetrics":{"numFiles":"7","numOutputRows":"20","numOutputBytes":"5097"},"engineInfo":"Apache-Spark/3.5.1 Delta-Lake/3.1.0","txnId":"e032987b-dbd1-4b87-9439-90c950dc109c"}} +{"metaData":{"id":"c7dda184-6f3b-46a7-9449-4b8ccc475406","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"col1\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"col2\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":[],"configuration":{},"createdTime":1713871741713}} +{"protocol":{"minReaderVersion":1,"minWriterVersion":2}} +{"add":{"path":"part-00000-15854bd4-f450-4a20-8a8a-7d914751b230-c000.snappy.parquet","partitionValues":{},"size":733,"modificationTime":1713871743171,"dataChange":true,"stats":"{\"numRecords\":3,\"minValues\":{\"col1\":12,\"col2\":\"data-0-12\"},\"maxValues\":{\"col1\":15,\"col2\":\"data-0-15\"},\"nullCount\":{\"col1\":0,\"col2\":0}}"}} +{"add":{"path":"part-00001-e3388985-08fd-4f28-81d7-c922eb7c0cac-c000.snappy.parquet","partitionValues":{},"size":733,"modificationTime":1713871743171,"dataChange":true,"stats":"{\"numRecords\":3,\"minValues\":{\"col1\":11,\"col2\":\"data-0-11\"},\"maxValues\":{\"col1\":17,\"col2\":\"data-0-17\"},\"nullCount\":{\"col1\":0,\"col2\":0}}"}} +{"add":{"path":"part-00002-19206437-7615-4800-bd56-f9d3c596918e-c000.snappy.parquet","partitionValues":{},"size":732,"modificationTime":1713871743171,"dataChange":true,"stats":"{\"numRecords\":3,\"minValues\":{\"col1\":10,\"col2\":\"data-0-10\"},\"maxValues\":{\"col1\":18,\"col2\":\"data-0-18\"},\"nullCount\":{\"col1\":0,\"col2\":0}}"}} +{"add":{"path":"part-00003-93ecd48d-f465-49c4-8abf-83d8e4b0b33b-c000.snappy.parquet","partitionValues":{},"size":728,"modificationTime":1713871743171,"dataChange":true,"stats":"{\"numRecords\":3,\"minValues\":{\"col1\":0,\"col2\":\"data-0-0\"},\"maxValues\":{\"col1\":19,\"col2\":\"data-0-2\"},\"nullCount\":{\"col1\":0,\"col2\":0}}"}} +{"add":{"path":"part-00004-4f115879-4c36-4574-addd-463782349ac4-c000.snappy.parquet","partitionValues":{},"size":727,"modificationTime":1713871743171,"dataChange":true,"stats":"{\"numRecords\":3,\"minValues\":{\"col1\":3,\"col2\":\"data-0-3\"},\"maxValues\":{\"col1\":8,\"col2\":\"data-0-8\"},\"nullCount\":{\"col1\":0,\"col2\":0}}"}} +{"add":{"path":"part-00005-8f1cbfda-c8a6-4318-b6b6-d9e98a93a41f-c000.snappy.parquet","partitionValues":{},"size":727,"modificationTime":1713871743171,"dataChange":true,"stats":"{\"numRecords\":3,\"minValues\":{\"col1\":1,\"col2\":\"data-0-1\"},\"maxValues\":{\"col1\":6,\"col2\":\"data-0-6\"},\"nullCount\":{\"col1\":0,\"col2\":0}}"}} +{"add":{"path":"part-00006-7bb84938-7f7d-4f86-83be-3fae8bbdc52a-c000.snappy.parquet","partitionValues":{},"size":717,"modificationTime":1713871743171,"dataChange":true,"stats":"{\"numRecords\":2,\"minValues\":{\"col1\":7,\"col2\":\"data-0-7\"},\"maxValues\":{\"col1\":9,\"col2\":\"data-0-9\"},\"nullCount\":{\"col1\":0,\"col2\":0}}"}} diff --git a/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/_delta_log/00000000000000000001.json b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/_delta_log/00000000000000000001.json new file mode 100644 index 0000000000000..17b2485180548 --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/_delta_log/00000000000000000001.json @@ -0,0 +1,3 @@ +{"commitInfo":{"timestamp":1713871747611,"operation":"SET TBLPROPERTIES","operationParameters":{"properties":"{\"delta.minReaderVersion\":\"3\",\"delta.minWriterVersion\":\"7\"}"},"readVersion":0,"isolationLevel":"Serializable","isBlindAppend":true,"operationMetrics":{},"engineInfo":"Apache-Spark/3.5.1 Delta-Lake/3.1.0","txnId":"099a8e78-ec11-429d-afd4-edeed6c2535f"}} +{"metaData":{"id":"c7dda184-6f3b-46a7-9449-4b8ccc475406","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"col1\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"col2\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":[],"configuration":{},"createdTime":1713871741713}} +{"protocol":{"minReaderVersion":3,"minWriterVersion":7,"readerFeatures":[],"writerFeatures":["appendOnly","invariants"]}} diff --git a/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/part-00000-15854bd4-f450-4a20-8a8a-7d914751b230-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/part-00000-15854bd4-f450-4a20-8a8a-7d914751b230-c000.snappy.parquet new file mode 100644 index 0000000000000..6db3ce7ae06a6 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/part-00000-15854bd4-f450-4a20-8a8a-7d914751b230-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/part-00001-e3388985-08fd-4f28-81d7-c922eb7c0cac-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/part-00001-e3388985-08fd-4f28-81d7-c922eb7c0cac-c000.snappy.parquet new file mode 100644 index 0000000000000..de388871369f5 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/part-00001-e3388985-08fd-4f28-81d7-c922eb7c0cac-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/part-00002-19206437-7615-4800-bd56-f9d3c596918e-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/part-00002-19206437-7615-4800-bd56-f9d3c596918e-c000.snappy.parquet new file mode 100644 index 0000000000000..7890ad318a243 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/part-00002-19206437-7615-4800-bd56-f9d3c596918e-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/part-00003-93ecd48d-f465-49c4-8abf-83d8e4b0b33b-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/part-00003-93ecd48d-f465-49c4-8abf-83d8e4b0b33b-c000.snappy.parquet new file mode 100644 index 0000000000000..e630a6d30b47f Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/part-00003-93ecd48d-f465-49c4-8abf-83d8e4b0b33b-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/part-00004-4f115879-4c36-4574-addd-463782349ac4-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/part-00004-4f115879-4c36-4574-addd-463782349ac4-c000.snappy.parquet new file mode 100644 index 0000000000000..538ac70319473 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/part-00004-4f115879-4c36-4574-addd-463782349ac4-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/part-00005-8f1cbfda-c8a6-4318-b6b6-d9e98a93a41f-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/part-00005-8f1cbfda-c8a6-4318-b6b6-d9e98a93a41f-c000.snappy.parquet new file mode 100644 index 0000000000000..d24bd70614717 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/part-00005-8f1cbfda-c8a6-4318-b6b6-d9e98a93a41f-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/part-00006-7bb84938-7f7d-4f86-83be-3fae8bbdc52a-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/part-00006-7bb84938-7f7d-4f86-83be-3fae8bbdc52a-c000.snappy.parquet new file mode 100644 index 0000000000000..03d858f5f6279 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/checkpointed-delta-table/part-00006-7bb84938-7f7d-4f86-83be-3fae8bbdc52a-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-array-primitives/_delta_log/.s3-optimization-0 b/presto-delta/src/test/resources/delta_v3/data-reader-array-primitives/_delta_log/.s3-optimization-0 new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-array-primitives/_delta_log/.s3-optimization-1 b/presto-delta/src/test/resources/delta_v3/data-reader-array-primitives/_delta_log/.s3-optimization-1 new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-array-primitives/_delta_log/.s3-optimization-2 b/presto-delta/src/test/resources/delta_v3/data-reader-array-primitives/_delta_log/.s3-optimization-2 new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-array-primitives/_delta_log/00000000000000000000.crc b/presto-delta/src/test/resources/delta_v3/data-reader-array-primitives/_delta_log/00000000000000000000.crc new file mode 100644 index 0000000000000..fe1ca68766e04 --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/data-reader-array-primitives/_delta_log/00000000000000000000.crc @@ -0,0 +1 @@ +{"txnId":"a7e937ad-5939-4b36-a922-8345283bad7b","tableSizeBytes":3711,"numFiles":1,"numDeletedRecordsOpt":0,"numDeletionVectorsOpt":0,"numMetadata":1,"numProtocol":1,"setTransactions":[],"domainMetadata":[],"metadata":{"id":"24e137bb-4fc8-42d2-b99c-ef62fd86a5ea","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"as_array_int\",\"type\":{\"type\":\"array\",\"elementType\":\"integer\",\"containsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"as_array_long\",\"type\":{\"type\":\"array\",\"elementType\":\"long\",\"containsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"as_array_byte\",\"type\":{\"type\":\"array\",\"elementType\":\"byte\",\"containsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"as_array_short\",\"type\":{\"type\":\"array\",\"elementType\":\"short\",\"containsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"as_array_boolean\",\"type\":{\"type\":\"array\",\"elementType\":\"boolean\",\"containsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"as_array_float\",\"type\":{\"type\":\"array\",\"elementType\":\"float\",\"containsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"as_array_double\",\"type\":{\"type\":\"array\",\"elementType\":\"double\",\"containsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"as_array_string\",\"type\":{\"type\":\"array\",\"elementType\":\"string\",\"containsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"as_array_binary\",\"type\":{\"type\":\"array\",\"elementType\":\"binary\",\"containsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"as_array_big_decimal\",\"type\":{\"type\":\"array\",\"elementType\":\"decimal(1,0)\",\"containsNull\":true},\"nullable\":true,\"metadata\":{}}]}","partitionColumns":[],"configuration":{"delta.checkpoint.writeStatsAsStruct":"true","delta.checkpoint.writeStatsAsJson":"false","delta.enableDeletionVectors":"true"},"createdTime":1713189873002},"protocol":{"minReaderVersion":3,"minWriterVersion":7,"readerFeatures":["deletionVectors"],"writerFeatures":["deletionVectors"]},"histogramOpt":{"sortedBinBoundaries":[0,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,12582912,16777216,20971520,25165824,29360128,33554432,37748736,41943040,50331648,58720256,67108864,75497472,83886080,92274688,100663296,109051904,117440512,125829120,130023424,134217728,138412032,142606336,146800640,150994944,167772160,184549376,201326592,218103808,234881024,251658240,268435456,285212672,301989888,318767104,335544320,352321536,369098752,385875968,402653184,419430400,436207616,452984832,469762048,486539264,503316480,520093696,536870912,553648128,570425344,587202560,603979776,671088640,738197504,805306368,872415232,939524096,1006632960,1073741824,1140850688,1207959552,1275068416,1342177280,1409286144,1476395008,1610612736,1744830464,1879048192,2013265920,2147483648,2415919104,2684354560,2952790016,3221225472,3489660928,3758096384,4026531840,4294967296,8589934592,17179869184,34359738368,68719476736,137438953472,274877906944],"fileCounts":[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"totalBytes":[3711,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},"deletedRecordCountsHistogramOpt":{"deletedRecordCounts":[1,0,0,0,0,0,0,0,0,0]},"allFiles":[{"path":"part-00000-13921577-6635-457e-9e3a-f32dc7fea982.c000.snappy.parquet","partitionValues":{},"size":3711,"modificationTime":1713189874000,"dataChange":false,"stats":"{\"numRecords\":10,\"nullCount\":{\"as_array_int\":0,\"as_array_long\":0,\"as_array_byte\":0,\"as_array_short\":0,\"as_array_boolean\":0,\"as_array_float\":0,\"as_array_double\":0,\"as_array_string\":0,\"as_array_binary\":0,\"as_array_big_decimal\":0},\"tightBounds\":true}","tags":{"INSERTION_TIME":"1713189874000000","MIN_INSERTION_TIME":"1713189874000000","MAX_INSERTION_TIME":"1713189874000000","OPTIMIZE_TARGET_SIZE":"268435456"}}]} diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-array-primitives/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v3/data-reader-array-primitives/_delta_log/00000000000000000000.json new file mode 100644 index 0000000000000..ef9f4482f85f5 --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/data-reader-array-primitives/_delta_log/00000000000000000000.json @@ -0,0 +1,4 @@ +{"commitInfo":{"timestamp":1713189874069,"operation":"CREATE TABLE AS SELECT","operationParameters":{"partitionBy":"[]","description":null,"isManaged":"false","properties":"{\"delta.checkpoint.writeStatsAsStruct\":\"true\",\"delta.checkpoint.writeStatsAsJson\":\"false\",\"delta.enableDeletionVectors\":\"true\"}","statsOnLoad":false},"isolationLevel":"WriteSerializable","isBlindAppend":true,"operationMetrics":{"numFiles":"1","numOutputRows":"10","numOutputBytes":"3711"},"tags":{"restoresDeletedRows":"false"},"engineInfo":"Databricks-Runtime/14.1.x-photon-scala2.12","txnId":"a7e937ad-5939-4b36-a922-8345283bad7b"}} +{"metaData":{"id":"24e137bb-4fc8-42d2-b99c-ef62fd86a5ea","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"as_array_int\",\"type\":{\"type\":\"array\",\"elementType\":\"integer\",\"containsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"as_array_long\",\"type\":{\"type\":\"array\",\"elementType\":\"long\",\"containsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"as_array_byte\",\"type\":{\"type\":\"array\",\"elementType\":\"byte\",\"containsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"as_array_short\",\"type\":{\"type\":\"array\",\"elementType\":\"short\",\"containsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"as_array_boolean\",\"type\":{\"type\":\"array\",\"elementType\":\"boolean\",\"containsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"as_array_float\",\"type\":{\"type\":\"array\",\"elementType\":\"float\",\"containsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"as_array_double\",\"type\":{\"type\":\"array\",\"elementType\":\"double\",\"containsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"as_array_string\",\"type\":{\"type\":\"array\",\"elementType\":\"string\",\"containsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"as_array_binary\",\"type\":{\"type\":\"array\",\"elementType\":\"binary\",\"containsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"as_array_big_decimal\",\"type\":{\"type\":\"array\",\"elementType\":\"decimal(1,0)\",\"containsNull\":true},\"nullable\":true,\"metadata\":{}}]}","partitionColumns":[],"configuration":{"delta.checkpoint.writeStatsAsStruct":"true","delta.checkpoint.writeStatsAsJson":"false","delta.enableDeletionVectors":"true"},"createdTime":1713189873002}} +{"protocol":{"minReaderVersion":3,"minWriterVersion":7,"readerFeatures":["deletionVectors"],"writerFeatures":["deletionVectors"]}} +{"add":{"path":"part-00000-13921577-6635-457e-9e3a-f32dc7fea982.c000.snappy.parquet","partitionValues":{},"size":3711,"modificationTime":1713189874000,"dataChange":true,"stats":"{\"numRecords\":10,\"nullCount\":{\"as_array_int\":0,\"as_array_long\":0,\"as_array_byte\":0,\"as_array_short\":0,\"as_array_boolean\":0,\"as_array_float\":0,\"as_array_double\":0,\"as_array_string\":0,\"as_array_binary\":0,\"as_array_big_decimal\":0},\"tightBounds\":true}","tags":{"INSERTION_TIME":"1713189874000000","MIN_INSERTION_TIME":"1713189874000000","MAX_INSERTION_TIME":"1713189874000000","OPTIMIZE_TARGET_SIZE":"268435456"}}} diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-array-primitives/part-00000-13921577-6635-457e-9e3a-f32dc7fea982.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/data-reader-array-primitives/part-00000-13921577-6635-457e-9e3a-f32dc7fea982.c000.snappy.parquet new file mode 100644 index 0000000000000..e017afedf4af3 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/data-reader-array-primitives/part-00000-13921577-6635-457e-9e3a-f32dc7fea982.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-map/_delta_log/.s3-optimization-0 b/presto-delta/src/test/resources/delta_v3/data-reader-map/_delta_log/.s3-optimization-0 new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-map/_delta_log/.s3-optimization-1 b/presto-delta/src/test/resources/delta_v3/data-reader-map/_delta_log/.s3-optimization-1 new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-map/_delta_log/.s3-optimization-2 b/presto-delta/src/test/resources/delta_v3/data-reader-map/_delta_log/.s3-optimization-2 new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-map/_delta_log/00000000000000000000.crc b/presto-delta/src/test/resources/delta_v3/data-reader-map/_delta_log/00000000000000000000.crc new file mode 100644 index 0000000000000..60437d5634b41 --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/data-reader-map/_delta_log/00000000000000000000.crc @@ -0,0 +1 @@ +{"txnId":"48c10c94-6390-478a-be45-2b90c75fae6a","tableSizeBytes":3707,"numFiles":1,"numDeletedRecordsOpt":0,"numDeletionVectorsOpt":0,"numMetadata":1,"numProtocol":1,"setTransactions":[],"domainMetadata":[],"metadata":{"id":"74905d56-d9ff-42b7-920a-a9e18d78f6b5","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"i\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"a\",\"type\":{\"type\":\"map\",\"keyType\":\"integer\",\"valueType\":\"integer\",\"valueContainsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"b\",\"type\":{\"type\":\"map\",\"keyType\":\"long\",\"valueType\":\"byte\",\"valueContainsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"c\",\"type\":{\"type\":\"map\",\"keyType\":\"short\",\"valueType\":\"boolean\",\"valueContainsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"d\",\"type\":{\"type\":\"map\",\"keyType\":\"float\",\"valueType\":\"double\",\"valueContainsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"e\",\"type\":{\"type\":\"map\",\"keyType\":\"string\",\"valueType\":\"decimal(1,0)\",\"valueContainsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"f\",\"type\":{\"type\":\"map\",\"keyType\":\"integer\",\"valueType\":{\"type\":\"array\",\"elementType\":{\"type\":\"struct\",\"fields\":[{\"name\":\"val\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}}]},\"containsNull\":true},\"valueContainsNull\":true},\"nullable\":true,\"metadata\":{}}]}","partitionColumns":[],"configuration":{"delta.checkpoint.writeStatsAsStruct":"true","delta.checkpoint.writeStatsAsJson":"false","delta.enableDeletionVectors":"true"},"createdTime":1713190193986},"protocol":{"minReaderVersion":3,"minWriterVersion":7,"readerFeatures":["deletionVectors"],"writerFeatures":["deletionVectors"]},"histogramOpt":{"sortedBinBoundaries":[0,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,12582912,16777216,20971520,25165824,29360128,33554432,37748736,41943040,50331648,58720256,67108864,75497472,83886080,92274688,100663296,109051904,117440512,125829120,130023424,134217728,138412032,142606336,146800640,150994944,167772160,184549376,201326592,218103808,234881024,251658240,268435456,285212672,301989888,318767104,335544320,352321536,369098752,385875968,402653184,419430400,436207616,452984832,469762048,486539264,503316480,520093696,536870912,553648128,570425344,587202560,603979776,671088640,738197504,805306368,872415232,939524096,1006632960,1073741824,1140850688,1207959552,1275068416,1342177280,1409286144,1476395008,1610612736,1744830464,1879048192,2013265920,2147483648,2415919104,2684354560,2952790016,3221225472,3489660928,3758096384,4026531840,4294967296,8589934592,17179869184,34359738368,68719476736,137438953472,274877906944],"fileCounts":[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"totalBytes":[3707,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},"deletedRecordCountsHistogramOpt":{"deletedRecordCounts":[1,0,0,0,0,0,0,0,0,0]},"allFiles":[{"path":"part-00000-dcba864f-ad9d-4eaf-87a4-f1007bb0aff0.c000.snappy.parquet","partitionValues":{},"size":3707,"modificationTime":1713190195000,"dataChange":false,"stats":"{\"numRecords\":10,\"minValues\":{\"i\":0},\"maxValues\":{\"i\":9},\"nullCount\":{\"i\":0,\"a\":0,\"b\":0,\"c\":0,\"d\":0,\"e\":0,\"f\":0},\"tightBounds\":true}","tags":{"INSERTION_TIME":"1713190195000000","MIN_INSERTION_TIME":"1713190195000000","MAX_INSERTION_TIME":"1713190195000000","OPTIMIZE_TARGET_SIZE":"268435456"}}]} diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-map/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v3/data-reader-map/_delta_log/00000000000000000000.json new file mode 100644 index 0000000000000..9d890873695a8 --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/data-reader-map/_delta_log/00000000000000000000.json @@ -0,0 +1,4 @@ +{"commitInfo":{"timestamp":1713190195127,"operation":"CREATE TABLE AS SELECT","operationParameters":{"partitionBy":"[]","description":null,"isManaged":"false","properties":"{\"delta.checkpoint.writeStatsAsStruct\":\"true\",\"delta.checkpoint.writeStatsAsJson\":\"false\",\"delta.enableDeletionVectors\":\"true\"}","statsOnLoad":false},"isolationLevel":"WriteSerializable","isBlindAppend":true,"operationMetrics":{"numFiles":"1","numOutputRows":"10","numOutputBytes":"3707"},"tags":{"restoresDeletedRows":"false"},"engineInfo":"Databricks-Runtime/14.1.x-photon-scala2.12","txnId":"48c10c94-6390-478a-be45-2b90c75fae6a"}} +{"metaData":{"id":"74905d56-d9ff-42b7-920a-a9e18d78f6b5","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"i\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"a\",\"type\":{\"type\":\"map\",\"keyType\":\"integer\",\"valueType\":\"integer\",\"valueContainsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"b\",\"type\":{\"type\":\"map\",\"keyType\":\"long\",\"valueType\":\"byte\",\"valueContainsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"c\",\"type\":{\"type\":\"map\",\"keyType\":\"short\",\"valueType\":\"boolean\",\"valueContainsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"d\",\"type\":{\"type\":\"map\",\"keyType\":\"float\",\"valueType\":\"double\",\"valueContainsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"e\",\"type\":{\"type\":\"map\",\"keyType\":\"string\",\"valueType\":\"decimal(1,0)\",\"valueContainsNull\":true},\"nullable\":true,\"metadata\":{}},{\"name\":\"f\",\"type\":{\"type\":\"map\",\"keyType\":\"integer\",\"valueType\":{\"type\":\"array\",\"elementType\":{\"type\":\"struct\",\"fields\":[{\"name\":\"val\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}}]},\"containsNull\":true},\"valueContainsNull\":true},\"nullable\":true,\"metadata\":{}}]}","partitionColumns":[],"configuration":{"delta.checkpoint.writeStatsAsStruct":"true","delta.checkpoint.writeStatsAsJson":"false","delta.enableDeletionVectors":"true"},"createdTime":1713190193986}} +{"protocol":{"minReaderVersion":3,"minWriterVersion":7,"readerFeatures":["deletionVectors"],"writerFeatures":["deletionVectors"]}} +{"add":{"path":"part-00000-dcba864f-ad9d-4eaf-87a4-f1007bb0aff0.c000.snappy.parquet","partitionValues":{},"size":3707,"modificationTime":1713190195000,"dataChange":true,"stats":"{\"numRecords\":10,\"minValues\":{\"i\":0},\"maxValues\":{\"i\":9},\"nullCount\":{\"i\":0,\"a\":0,\"b\":0,\"c\":0,\"d\":0,\"e\":0,\"f\":0},\"tightBounds\":true}","tags":{"INSERTION_TIME":"1713190195000000","MIN_INSERTION_TIME":"1713190195000000","MAX_INSERTION_TIME":"1713190195000000","OPTIMIZE_TARGET_SIZE":"268435456"}}} diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-map/part-00000-dcba864f-ad9d-4eaf-87a4-f1007bb0aff0.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/data-reader-map/part-00000-dcba864f-ad9d-4eaf-87a4-f1007bb0aff0.c000.snappy.parquet new file mode 100644 index 0000000000000..61c3a46e697b8 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/data-reader-map/part-00000-dcba864f-ad9d-4eaf-87a4-f1007bb0aff0.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-nested-struct/_delta_log/.s3-optimization-0 b/presto-delta/src/test/resources/delta_v3/data-reader-nested-struct/_delta_log/.s3-optimization-0 new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-nested-struct/_delta_log/.s3-optimization-1 b/presto-delta/src/test/resources/delta_v3/data-reader-nested-struct/_delta_log/.s3-optimization-1 new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-nested-struct/_delta_log/.s3-optimization-2 b/presto-delta/src/test/resources/delta_v3/data-reader-nested-struct/_delta_log/.s3-optimization-2 new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-nested-struct/_delta_log/00000000000000000000.crc b/presto-delta/src/test/resources/delta_v3/data-reader-nested-struct/_delta_log/00000000000000000000.crc new file mode 100644 index 0000000000000..2ef36ffb22879 --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/data-reader-nested-struct/_delta_log/00000000000000000000.crc @@ -0,0 +1 @@ +{"txnId":"5f12afd9-2ffd-4c1a-84fe-af3049407d64","tableSizeBytes":1600,"numFiles":1,"numDeletedRecordsOpt":0,"numDeletionVectorsOpt":0,"numMetadata":1,"numProtocol":1,"setTransactions":[],"domainMetadata":[],"metadata":{"id":"442b5b95-8471-4aed-b6ab-8cdb3aec7202","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"a\",\"type\":{\"type\":\"struct\",\"fields\":[{\"name\":\"aa\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}},{\"name\":\"ab\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}},{\"name\":\"ac\",\"type\":{\"type\":\"struct\",\"fields\":[{\"name\":\"aca\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"acb\",\"type\":\"long\",\"nullable\":true,\"metadata\":{}}]},\"nullable\":true,\"metadata\":{}}]},\"nullable\":true,\"metadata\":{}},{\"name\":\"b\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":[],"configuration":{"delta.checkpoint.writeStatsAsStruct":"true","delta.checkpoint.writeStatsAsJson":"false","delta.enableDeletionVectors":"true"},"createdTime":1713190325923},"protocol":{"minReaderVersion":3,"minWriterVersion":7,"readerFeatures":["deletionVectors"],"writerFeatures":["deletionVectors"]},"histogramOpt":{"sortedBinBoundaries":[0,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,12582912,16777216,20971520,25165824,29360128,33554432,37748736,41943040,50331648,58720256,67108864,75497472,83886080,92274688,100663296,109051904,117440512,125829120,130023424,134217728,138412032,142606336,146800640,150994944,167772160,184549376,201326592,218103808,234881024,251658240,268435456,285212672,301989888,318767104,335544320,352321536,369098752,385875968,402653184,419430400,436207616,452984832,469762048,486539264,503316480,520093696,536870912,553648128,570425344,587202560,603979776,671088640,738197504,805306368,872415232,939524096,1006632960,1073741824,1140850688,1207959552,1275068416,1342177280,1409286144,1476395008,1610612736,1744830464,1879048192,2013265920,2147483648,2415919104,2684354560,2952790016,3221225472,3489660928,3758096384,4026531840,4294967296,8589934592,17179869184,34359738368,68719476736,137438953472,274877906944],"fileCounts":[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"totalBytes":[1600,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},"deletedRecordCountsHistogramOpt":{"deletedRecordCounts":[1,0,0,0,0,0,0,0,0,0]},"allFiles":[{"path":"part-00000-ae3312c4-7513-410d-985d-f2cf8da57313.c000.snappy.parquet","partitionValues":{},"size":1600,"modificationTime":1713190327000,"dataChange":false,"stats":"{\"numRecords\":10,\"minValues\":{\"a\":{\"aa\":\"0\",\"ab\":\"0\",\"ac\":{\"aca\":0,\"acb\":0}},\"b\":0},\"maxValues\":{\"a\":{\"aa\":\"9\",\"ab\":\"9\",\"ac\":{\"aca\":9,\"acb\":9}},\"b\":9},\"nullCount\":{\"a\":{\"aa\":0,\"ab\":0,\"ac\":{\"aca\":0,\"acb\":0}},\"b\":0},\"tightBounds\":true}","tags":{"INSERTION_TIME":"1713190327000000","MIN_INSERTION_TIME":"1713190327000000","MAX_INSERTION_TIME":"1713190327000000","OPTIMIZE_TARGET_SIZE":"268435456"}}]} diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-nested-struct/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v3/data-reader-nested-struct/_delta_log/00000000000000000000.json new file mode 100644 index 0000000000000..4a2c4e6750431 --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/data-reader-nested-struct/_delta_log/00000000000000000000.json @@ -0,0 +1,4 @@ +{"commitInfo":{"timestamp":1713190326973,"operation":"CREATE TABLE AS SELECT","operationParameters":{"partitionBy":"[]","description":null,"isManaged":"false","properties":"{\"delta.checkpoint.writeStatsAsStruct\":\"true\",\"delta.checkpoint.writeStatsAsJson\":\"false\",\"delta.enableDeletionVectors\":\"true\"}","statsOnLoad":false},"isolationLevel":"WriteSerializable","isBlindAppend":true,"operationMetrics":{"numFiles":"1","numOutputRows":"10","numOutputBytes":"1600"},"tags":{"restoresDeletedRows":"false"},"engineInfo":"Databricks-Runtime/14.1.x-photon-scala2.12","txnId":"5f12afd9-2ffd-4c1a-84fe-af3049407d64"}} +{"metaData":{"id":"442b5b95-8471-4aed-b6ab-8cdb3aec7202","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"a\",\"type\":{\"type\":\"struct\",\"fields\":[{\"name\":\"aa\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}},{\"name\":\"ab\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}},{\"name\":\"ac\",\"type\":{\"type\":\"struct\",\"fields\":[{\"name\":\"aca\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"acb\",\"type\":\"long\",\"nullable\":true,\"metadata\":{}}]},\"nullable\":true,\"metadata\":{}}]},\"nullable\":true,\"metadata\":{}},{\"name\":\"b\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":[],"configuration":{"delta.checkpoint.writeStatsAsStruct":"true","delta.checkpoint.writeStatsAsJson":"false","delta.enableDeletionVectors":"true"},"createdTime":1713190325923}} +{"protocol":{"minReaderVersion":3,"minWriterVersion":7,"readerFeatures":["deletionVectors"],"writerFeatures":["deletionVectors"]}} +{"add":{"path":"part-00000-ae3312c4-7513-410d-985d-f2cf8da57313.c000.snappy.parquet","partitionValues":{},"size":1600,"modificationTime":1713190327000,"dataChange":true,"stats":"{\"numRecords\":10,\"minValues\":{\"a\":{\"aa\":\"0\",\"ab\":\"0\",\"ac\":{\"aca\":0,\"acb\":0}},\"b\":0},\"maxValues\":{\"a\":{\"aa\":\"9\",\"ab\":\"9\",\"ac\":{\"aca\":9,\"acb\":9}},\"b\":9},\"nullCount\":{\"a\":{\"aa\":0,\"ab\":0,\"ac\":{\"aca\":0,\"acb\":0}},\"b\":0},\"tightBounds\":true}","tags":{"INSERTION_TIME":"1713190327000000","MIN_INSERTION_TIME":"1713190327000000","MAX_INSERTION_TIME":"1713190327000000","OPTIMIZE_TARGET_SIZE":"268435456"}}} diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-nested-struct/part-00000-ae3312c4-7513-410d-985d-f2cf8da57313.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/data-reader-nested-struct/part-00000-ae3312c4-7513-410d-985d-f2cf8da57313.c000.snappy.parquet new file mode 100644 index 0000000000000..edc69a79114ff Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/data-reader-nested-struct/part-00000-ae3312c4-7513-410d-985d-f2cf8da57313.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/_delta_log/.00000000000000000000.json.crc b/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/_delta_log/.00000000000000000000.json.crc new file mode 100644 index 0000000000000..d934e117f37f3 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/_delta_log/.00000000000000000000.json.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/_delta_log/.00000000000000000001.json.crc b/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/_delta_log/.00000000000000000001.json.crc new file mode 100644 index 0000000000000..2899038a7166e Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/_delta_log/.00000000000000000001.json.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/_delta_log/00000000000000000000.json new file mode 100644 index 0000000000000..22679deca8247 --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/_delta_log/00000000000000000000.json @@ -0,0 +1,6 @@ +{"commitInfo":{"timestamp":1713955885069,"operation":"WRITE","operationParameters":{"mode":"Overwrite","partitionBy":"[\"as_int\",\"as_long\",\"as_byte\",\"as_short\",\"as_boolean\",\"as_float\",\"as_double\",\"as_string\",\"as_date\",\"as_timestamp\",\"as_big_decimal\"]"},"isolationLevel":"Serializable","isBlindAppend":false,"operationMetrics":{"numFiles":"3","numOutputRows":"3","numOutputBytes":"1347"},"engineInfo":"Apache-Spark/3.5.1 Delta-Lake/3.1.0","txnId":"9b250066-b90d-4fe5-abf7-04990dc85713"}} +{"metaData":{"id":"13d0a1fb-53aa-49f6-b5f0-c5347c805d6f","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"as_int\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_long\",\"type\":\"long\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_byte\",\"type\":\"byte\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_short\",\"type\":\"short\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_boolean\",\"type\":\"boolean\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_float\",\"type\":\"float\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_double\",\"type\":\"double\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_string\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_date\",\"type\":\"date\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_timestamp\",\"type\":\"timestamp\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_big_decimal\",\"type\":\"decimal(1,0)\",\"nullable\":true,\"metadata\":{}},{\"name\":\"value\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":["as_int","as_long","as_byte","as_short","as_boolean","as_float","as_double","as_string","as_date","as_timestamp","as_big_decimal"],"configuration":{},"createdTime":1713955883329}} +{"protocol":{"minReaderVersion":1,"minWriterVersion":2}} +{"add":{"path":"as_int=1/as_long=1/as_byte=1/as_short=1/as_boolean=false/as_float=1.0/as_double=1.0/as_string=1/as_date=2021-09-08/as_timestamp=2021-09-08%252011%253A11%253A11/as_big_decimal=1/part-00000-889df1d9-6d79-4ea3-8b69-971cec9bf618.c000.snappy.parquet","partitionValues":{"as_big_decimal":"1","as_int":"1","as_byte":"1","as_long":"1","as_date":"2021-09-08","as_string":"1","as_timestamp":"2021-09-08 11:11:11","as_float":"1.0","as_short":"1","as_boolean":"false","as_double":"1.0"},"size":449,"modificationTime":1713955884743,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"value\":\"1\"},\"maxValues\":{\"value\":\"1\"},\"nullCount\":{\"value\":0}}"}} +{"add":{"path":"as_int=__HIVE_DEFAULT_PARTITION__/as_long=__HIVE_DEFAULT_PARTITION__/as_byte=__HIVE_DEFAULT_PARTITION__/as_short=__HIVE_DEFAULT_PARTITION__/as_boolean=__HIVE_DEFAULT_PARTITION__/as_float=__HIVE_DEFAULT_PARTITION__/as_double=__HIVE_DEFAULT_PARTITION__/as_string=__HIVE_DEFAULT_PARTITION__/as_date=__HIVE_DEFAULT_PARTITION__/as_timestamp=__HIVE_DEFAULT_PARTITION__/as_big_decimal=__HIVE_DEFAULT_PARTITION__/part-00001-6c239ff5-7f3e-4bbd-b06a-4ea89364c08a.c000.snappy.parquet","partitionValues":{"as_big_decimal":null,"as_int":null,"as_byte":null,"as_long":null,"as_date":null,"as_string":null,"as_timestamp":null,"as_float":null,"as_short":null,"as_boolean":null,"as_double":null},"size":449,"modificationTime":1713955884743,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"value\":\"2\"},\"maxValues\":{\"value\":\"2\"},\"nullCount\":{\"value\":0}}"}} +{"add":{"path":"as_int=0/as_long=0/as_byte=0/as_short=0/as_boolean=true/as_float=0.0/as_double=0.0/as_string=0/as_date=2021-09-08/as_timestamp=2021-09-08%252011%253A11%253A11/as_big_decimal=0/part-00002-8e5e2719-f9d0-4e23-8c27-1ac72563c6ab.c000.snappy.parquet","partitionValues":{"as_big_decimal":"0","as_int":"0","as_byte":"0","as_long":"0","as_date":"2021-09-08","as_string":"0","as_timestamp":"2021-09-08 11:11:11","as_float":"0.0","as_short":"0","as_boolean":"true","as_double":"0.0"},"size":449,"modificationTime":1713955884743,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"value\":\"0\"},\"maxValues\":{\"value\":\"0\"},\"nullCount\":{\"value\":0}}"}} diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/_delta_log/00000000000000000001.json b/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/_delta_log/00000000000000000001.json new file mode 100644 index 0000000000000..4ab72ecf8ed73 --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/_delta_log/00000000000000000001.json @@ -0,0 +1,3 @@ +{"commitInfo":{"timestamp":1713955888815,"operation":"SET TBLPROPERTIES","operationParameters":{"properties":"{\"delta.minReaderVersion\":\"3\",\"delta.minWriterVersion\":\"7\"}"},"readVersion":0,"isolationLevel":"Serializable","isBlindAppend":true,"operationMetrics":{},"engineInfo":"Apache-Spark/3.5.1 Delta-Lake/3.1.0","txnId":"5e3d0fee-e8f7-4471-b48a-21537d4b27cc"}} +{"metaData":{"id":"13d0a1fb-53aa-49f6-b5f0-c5347c805d6f","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"as_int\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_long\",\"type\":\"long\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_byte\",\"type\":\"byte\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_short\",\"type\":\"short\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_boolean\",\"type\":\"boolean\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_float\",\"type\":\"float\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_double\",\"type\":\"double\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_string\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_date\",\"type\":\"date\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_timestamp\",\"type\":\"timestamp\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_big_decimal\",\"type\":\"decimal(1,0)\",\"nullable\":true,\"metadata\":{}},{\"name\":\"value\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":["as_int","as_long","as_byte","as_short","as_boolean","as_float","as_double","as_string","as_date","as_timestamp","as_big_decimal"],"configuration":{},"createdTime":1713955883329}} +{"protocol":{"minReaderVersion":3,"minWriterVersion":7,"readerFeatures":[],"writerFeatures":["appendOnly","invariants"]}} diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/as_int=0/as_long=0/as_byte=0/as_short=0/as_boolean=true/as_float=0.0/as_double=0.0/as_string=0/as_date=2021-09-08/as_timestamp=2021-09-08%252011%253A11%253A11/as_big_decimal=0/.part-00002-8e5e2719-f9d0-4e23-8c27-1ac72563c6ab.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/as_int=0/as_long=0/as_byte=0/as_short=0/as_boolean=true/as_float=0.0/as_double=0.0/as_string=0/as_date=2021-09-08/as_timestamp=2021-09-08%252011%253A11%253A11/as_big_decimal=0/.part-00002-8e5e2719-f9d0-4e23-8c27-1ac72563c6ab.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..8fa2a9e516c38 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/as_int=0/as_long=0/as_byte=0/as_short=0/as_boolean=true/as_float=0.0/as_double=0.0/as_string=0/as_date=2021-09-08/as_timestamp=2021-09-08%252011%253A11%253A11/as_big_decimal=0/.part-00002-8e5e2719-f9d0-4e23-8c27-1ac72563c6ab.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/as_int=0/as_long=0/as_byte=0/as_short=0/as_boolean=true/as_float=0.0/as_double=0.0/as_string=0/as_date=2021-09-08/as_timestamp=2021-09-08%252011%253A11%253A11/as_big_decimal=0/part-00002-8e5e2719-f9d0-4e23-8c27-1ac72563c6ab.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/as_int=0/as_long=0/as_byte=0/as_short=0/as_boolean=true/as_float=0.0/as_double=0.0/as_string=0/as_date=2021-09-08/as_timestamp=2021-09-08%252011%253A11%253A11/as_big_decimal=0/part-00002-8e5e2719-f9d0-4e23-8c27-1ac72563c6ab.c000.snappy.parquet new file mode 100644 index 0000000000000..f3c803fa9934f Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/as_int=0/as_long=0/as_byte=0/as_short=0/as_boolean=true/as_float=0.0/as_double=0.0/as_string=0/as_date=2021-09-08/as_timestamp=2021-09-08%252011%253A11%253A11/as_big_decimal=0/part-00002-8e5e2719-f9d0-4e23-8c27-1ac72563c6ab.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/as_int=1/as_long=1/as_byte=1/as_short=1/as_boolean=false/as_float=1.0/as_double=1.0/as_string=1/as_date=2021-09-08/as_timestamp=2021-09-08%252011%253A11%253A11/as_big_decimal=1/.part-00000-889df1d9-6d79-4ea3-8b69-971cec9bf618.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/as_int=1/as_long=1/as_byte=1/as_short=1/as_boolean=false/as_float=1.0/as_double=1.0/as_string=1/as_date=2021-09-08/as_timestamp=2021-09-08%252011%253A11%253A11/as_big_decimal=1/.part-00000-889df1d9-6d79-4ea3-8b69-971cec9bf618.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..007457859d688 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/as_int=1/as_long=1/as_byte=1/as_short=1/as_boolean=false/as_float=1.0/as_double=1.0/as_string=1/as_date=2021-09-08/as_timestamp=2021-09-08%252011%253A11%253A11/as_big_decimal=1/.part-00000-889df1d9-6d79-4ea3-8b69-971cec9bf618.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/as_int=1/as_long=1/as_byte=1/as_short=1/as_boolean=false/as_float=1.0/as_double=1.0/as_string=1/as_date=2021-09-08/as_timestamp=2021-09-08%252011%253A11%253A11/as_big_decimal=1/part-00000-889df1d9-6d79-4ea3-8b69-971cec9bf618.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/as_int=1/as_long=1/as_byte=1/as_short=1/as_boolean=false/as_float=1.0/as_double=1.0/as_string=1/as_date=2021-09-08/as_timestamp=2021-09-08%252011%253A11%253A11/as_big_decimal=1/part-00000-889df1d9-6d79-4ea3-8b69-971cec9bf618.c000.snappy.parquet new file mode 100644 index 0000000000000..c39ca50efe54c Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/as_int=1/as_long=1/as_byte=1/as_short=1/as_boolean=false/as_float=1.0/as_double=1.0/as_string=1/as_date=2021-09-08/as_timestamp=2021-09-08%252011%253A11%253A11/as_big_decimal=1/part-00000-889df1d9-6d79-4ea3-8b69-971cec9bf618.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/as_int=__HIVE_DEFAULT_PARTITION__/as_long=__HIVE_DEFAULT_PARTITION__/as_byte=__HIVE_DEFAULT_PARTITION__/as_short=__HIVE_DEFAULT_PARTITION__/as_boolean=__HIVE_DEFAULT_PARTITION__/as_float=__HIVE_DEFAULT_PARTITION__/as_double=__HIVE_DEFAULT_PARTITION__/as_string=__HIVE_DEFAULT_PARTITION__/as_date=__HIVE_DEFAULT_PARTITION__/as_timestamp=__HIVE_DEFAULT_PARTITION__/as_big_decimal=__HIVE_DEFAULT_PARTITION__/.part-00001-6c239ff5-7f3e-4bbd-b06a-4ea89364c08a.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/as_int=__HIVE_DEFAULT_PARTITION__/as_long=__HIVE_DEFAULT_PARTITION__/as_byte=__HIVE_DEFAULT_PARTITION__/as_short=__HIVE_DEFAULT_PARTITION__/as_boolean=__HIVE_DEFAULT_PARTITION__/as_float=__HIVE_DEFAULT_PARTITION__/as_double=__HIVE_DEFAULT_PARTITION__/as_string=__HIVE_DEFAULT_PARTITION__/as_date=__HIVE_DEFAULT_PARTITION__/as_timestamp=__HIVE_DEFAULT_PARTITION__/as_big_decimal=__HIVE_DEFAULT_PARTITION__/.part-00001-6c239ff5-7f3e-4bbd-b06a-4ea89364c08a.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..199b7080493d5 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/as_int=__HIVE_DEFAULT_PARTITION__/as_long=__HIVE_DEFAULT_PARTITION__/as_byte=__HIVE_DEFAULT_PARTITION__/as_short=__HIVE_DEFAULT_PARTITION__/as_boolean=__HIVE_DEFAULT_PARTITION__/as_float=__HIVE_DEFAULT_PARTITION__/as_double=__HIVE_DEFAULT_PARTITION__/as_string=__HIVE_DEFAULT_PARTITION__/as_date=__HIVE_DEFAULT_PARTITION__/as_timestamp=__HIVE_DEFAULT_PARTITION__/as_big_decimal=__HIVE_DEFAULT_PARTITION__/.part-00001-6c239ff5-7f3e-4bbd-b06a-4ea89364c08a.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/as_int=__HIVE_DEFAULT_PARTITION__/as_long=__HIVE_DEFAULT_PARTITION__/as_byte=__HIVE_DEFAULT_PARTITION__/as_short=__HIVE_DEFAULT_PARTITION__/as_boolean=__HIVE_DEFAULT_PARTITION__/as_float=__HIVE_DEFAULT_PARTITION__/as_double=__HIVE_DEFAULT_PARTITION__/as_string=__HIVE_DEFAULT_PARTITION__/as_date=__HIVE_DEFAULT_PARTITION__/as_timestamp=__HIVE_DEFAULT_PARTITION__/as_big_decimal=__HIVE_DEFAULT_PARTITION__/part-00001-6c239ff5-7f3e-4bbd-b06a-4ea89364c08a.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/as_int=__HIVE_DEFAULT_PARTITION__/as_long=__HIVE_DEFAULT_PARTITION__/as_byte=__HIVE_DEFAULT_PARTITION__/as_short=__HIVE_DEFAULT_PARTITION__/as_boolean=__HIVE_DEFAULT_PARTITION__/as_float=__HIVE_DEFAULT_PARTITION__/as_double=__HIVE_DEFAULT_PARTITION__/as_string=__HIVE_DEFAULT_PARTITION__/as_date=__HIVE_DEFAULT_PARTITION__/as_timestamp=__HIVE_DEFAULT_PARTITION__/as_big_decimal=__HIVE_DEFAULT_PARTITION__/part-00001-6c239ff5-7f3e-4bbd-b06a-4ea89364c08a.c000.snappy.parquet new file mode 100644 index 0000000000000..071e3299f07ef Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/data-reader-partition-values/as_int=__HIVE_DEFAULT_PARTITION__/as_long=__HIVE_DEFAULT_PARTITION__/as_byte=__HIVE_DEFAULT_PARTITION__/as_short=__HIVE_DEFAULT_PARTITION__/as_boolean=__HIVE_DEFAULT_PARTITION__/as_float=__HIVE_DEFAULT_PARTITION__/as_double=__HIVE_DEFAULT_PARTITION__/as_string=__HIVE_DEFAULT_PARTITION__/as_date=__HIVE_DEFAULT_PARTITION__/as_timestamp=__HIVE_DEFAULT_PARTITION__/as_big_decimal=__HIVE_DEFAULT_PARTITION__/part-00001-6c239ff5-7f3e-4bbd-b06a-4ea89364c08a.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-primitives/.part-00000-67f9fa1a-1a50-4ab4-b05c-9f27e4282f9e-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/data-reader-primitives/.part-00000-67f9fa1a-1a50-4ab4-b05c-9f27e4282f9e-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..350628e48761a Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/data-reader-primitives/.part-00000-67f9fa1a-1a50-4ab4-b05c-9f27e4282f9e-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-primitives/.part-00001-1d73763d-9fb7-4501-afc7-3aa8cda3dcd0-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/data-reader-primitives/.part-00001-1d73763d-9fb7-4501-afc7-3aa8cda3dcd0-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..0cade11543dfd Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/data-reader-primitives/.part-00001-1d73763d-9fb7-4501-afc7-3aa8cda3dcd0-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-primitives/_delta_log/.00000000000000000000.json.crc b/presto-delta/src/test/resources/delta_v3/data-reader-primitives/_delta_log/.00000000000000000000.json.crc new file mode 100644 index 0000000000000..48f0da58e1dfc Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/data-reader-primitives/_delta_log/.00000000000000000000.json.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-primitives/_delta_log/.00000000000000000001.json.crc b/presto-delta/src/test/resources/delta_v3/data-reader-primitives/_delta_log/.00000000000000000001.json.crc new file mode 100644 index 0000000000000..72314b1b10fd0 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/data-reader-primitives/_delta_log/.00000000000000000001.json.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-primitives/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v3/data-reader-primitives/_delta_log/00000000000000000000.json new file mode 100644 index 0000000000000..c57dc8164d5da --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/data-reader-primitives/_delta_log/00000000000000000000.json @@ -0,0 +1,5 @@ +{"commitInfo":{"timestamp":1713866760055,"operation":"WRITE","operationParameters":{"mode":"Overwrite","partitionBy":"[]"},"isolationLevel":"Serializable","isBlindAppend":false,"operationMetrics":{"numFiles":"2","numOutputRows":"11","numOutputBytes":"5578"},"engineInfo":"Apache-Spark/3.5.1 Delta-Lake/3.1.0","txnId":"690decd8-748f-489f-bd0e-ecd50f1ffdb2"}} +{"metaData":{"id":"0f60b07c-e4aa-44e9-9471-1ae8e859b218","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"as_int\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_long\",\"type\":\"long\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_byte\",\"type\":\"byte\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_short\",\"type\":\"short\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_boolean\",\"type\":\"boolean\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_float\",\"type\":\"float\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_double\",\"type\":\"double\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_string\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_binary\",\"type\":\"binary\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_big_decimal\",\"type\":\"decimal(1,0)\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":[],"configuration":{},"createdTime":1713866757386}} +{"protocol":{"minReaderVersion":1,"minWriterVersion":2}} +{"add":{"path":"part-00000-67f9fa1a-1a50-4ab4-b05c-9f27e4282f9e-c000.snappy.parquet","partitionValues":{},"size":2833,"modificationTime":1713866759621,"dataChange":true,"stats":"{\"numRecords\":6,\"minValues\":{\"as_int\":4,\"as_long\":4,\"as_byte\":4,\"as_short\":4,\"as_float\":4.0,\"as_double\":4.0,\"as_string\":\"4\",\"as_big_decimal\":4},\"maxValues\":{\"as_int\":9,\"as_long\":9,\"as_byte\":9,\"as_short\":9,\"as_float\":9.0,\"as_double\":9.0,\"as_string\":\"9\",\"as_big_decimal\":9},\"nullCount\":{\"as_int\":0,\"as_long\":0,\"as_byte\":0,\"as_short\":0,\"as_boolean\":0,\"as_float\":0,\"as_double\":0,\"as_string\":0,\"as_binary\":0,\"as_big_decimal\":0}}"}} +{"add":{"path":"part-00001-1d73763d-9fb7-4501-afc7-3aa8cda3dcd0-c000.snappy.parquet","partitionValues":{},"size":2745,"modificationTime":1713866759621,"dataChange":true,"stats":"{\"numRecords\":5,\"minValues\":{\"as_int\":0,\"as_long\":0,\"as_byte\":0,\"as_short\":0,\"as_float\":0.0,\"as_double\":0.0,\"as_string\":\"0\",\"as_big_decimal\":0},\"maxValues\":{\"as_int\":3,\"as_long\":3,\"as_byte\":3,\"as_short\":3,\"as_float\":3.0,\"as_double\":3.0,\"as_string\":\"3\",\"as_big_decimal\":3},\"nullCount\":{\"as_int\":1,\"as_long\":1,\"as_byte\":1,\"as_short\":1,\"as_boolean\":1,\"as_float\":1,\"as_double\":1,\"as_string\":1,\"as_binary\":1,\"as_big_decimal\":1}}"}} diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-primitives/_delta_log/00000000000000000001.json b/presto-delta/src/test/resources/delta_v3/data-reader-primitives/_delta_log/00000000000000000001.json new file mode 100644 index 0000000000000..8349f39832053 --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/data-reader-primitives/_delta_log/00000000000000000001.json @@ -0,0 +1,3 @@ +{"commitInfo":{"timestamp":1713866764875,"operation":"SET TBLPROPERTIES","operationParameters":{"properties":"{\"delta.minReaderVersion\":\"3\",\"delta.minWriterVersion\":\"7\"}"},"readVersion":0,"isolationLevel":"Serializable","isBlindAppend":true,"operationMetrics":{},"engineInfo":"Apache-Spark/3.5.1 Delta-Lake/3.1.0","txnId":"f12b4343-42c4-4946-bf92-0426267890a8"}} +{"metaData":{"id":"0f60b07c-e4aa-44e9-9471-1ae8e859b218","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"as_int\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_long\",\"type\":\"long\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_byte\",\"type\":\"byte\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_short\",\"type\":\"short\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_boolean\",\"type\":\"boolean\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_float\",\"type\":\"float\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_double\",\"type\":\"double\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_string\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_binary\",\"type\":\"binary\",\"nullable\":true,\"metadata\":{}},{\"name\":\"as_big_decimal\",\"type\":\"decimal(1,0)\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":[],"configuration":{},"createdTime":1713866757386}} +{"protocol":{"minReaderVersion":3,"minWriterVersion":7,"readerFeatures":[],"writerFeatures":["appendOnly","invariants"]}} diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-primitives/part-00000-67f9fa1a-1a50-4ab4-b05c-9f27e4282f9e-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/data-reader-primitives/part-00000-67f9fa1a-1a50-4ab4-b05c-9f27e4282f9e-c000.snappy.parquet new file mode 100644 index 0000000000000..92ba1474ae7f8 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/data-reader-primitives/part-00000-67f9fa1a-1a50-4ab4-b05c-9f27e4282f9e-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/data-reader-primitives/part-00001-1d73763d-9fb7-4501-afc7-3aa8cda3dcd0-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/data-reader-primitives/part-00001-1d73763d-9fb7-4501-afc7-3aa8cda3dcd0-c000.snappy.parquet new file mode 100644 index 0000000000000..74b797d7c3bba Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/data-reader-primitives/part-00001-1d73763d-9fb7-4501-afc7-3aa8cda3dcd0-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/_delta_log/.00000000000000000000.json.crc b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/_delta_log/.00000000000000000000.json.crc new file mode 100644 index 0000000000000..3623b38b1e09d Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/_delta_log/.00000000000000000000.json.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/_delta_log/.00000000000000000001.json.crc b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/_delta_log/.00000000000000000001.json.crc new file mode 100644 index 0000000000000..0eb7428340537 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/_delta_log/.00000000000000000001.json.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/_delta_log/00000000000000000000.json new file mode 100644 index 0000000000000..a1b055c531a98 --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/_delta_log/00000000000000000000.json @@ -0,0 +1,8 @@ +{"commitInfo":{"timestamp":1713956585297,"operation":"WRITE","operationParameters":{"mode":"Overwrite","partitionBy":"[\"date\",\"city\"]"},"isolationLevel":"Serializable","isBlindAppend":false,"operationMetrics":{"numFiles":"5","numOutputRows":"5","numOutputBytes":"3450"},"engineInfo":"Apache-Spark/3.5.1 Delta-Lake/3.1.0","txnId":"5c66bd9e-7b46-4342-ae0a-6b53bc451626"}} +{"metaData":{"id":"eec3641b-b02a-4da0-b502-eb4149c4ddb1","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"city\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}},{\"name\":\"date\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}},{\"name\":\"name\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}},{\"name\":\"cnt\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":["date","city"],"configuration":{},"createdTime":1713956583685}} +{"protocol":{"minReaderVersion":1,"minWriterVersion":2}} +{"add":{"path":"date=20180520/city=bj/part-00000-fe79b4e1-aaca-4bef-9a72-00c6def5b90c.c000.snappy.parquet","partitionValues":{"date":"20180520","city":"bj"},"size":697,"modificationTime":1713956584979,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"name\":\"Trump\",\"cnt\":1},\"maxValues\":{\"name\":\"Trump\",\"cnt\":1},\"nullCount\":{\"name\":0,\"cnt\":0}}"}} +{"add":{"path":"date=20181212/city=sz/part-00001-b2e29782-7e1e-4819-a241-b5a9b5e910e8.c000.snappy.parquet","partitionValues":{"date":"20181212","city":"sz"},"size":697,"modificationTime":1713956584979,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"name\":\"Linda\",\"cnt\":8},\"maxValues\":{\"name\":\"Linda\",\"cnt\":8},\"nullCount\":{\"name\":0,\"cnt\":0}}"}} +{"add":{"path":"date=20180718/city=hz/part-00002-f7dbf1cd-7f74-40c2-b097-832286326b3e.c000.snappy.parquet","partitionValues":{"date":"20180718","city":"hz"},"size":690,"modificationTime":1713956584979,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"name\":\"Jone\",\"cnt\":7},\"maxValues\":{\"name\":\"Jone\",\"cnt\":7},\"nullCount\":{\"name\":0,\"cnt\":0}}"}} +{"add":{"path":"date=20180520/city=hz/part-00003-6dbf3cc5-0294-49d5-a40f-79c05a093c66.c000.snappy.parquet","partitionValues":{"date":"20180520","city":"hz"},"size":683,"modificationTime":1713956584979,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"name\":\"Jim\",\"cnt\":3},\"maxValues\":{\"name\":\"Jim\",\"cnt\":3},\"nullCount\":{\"name\":0,\"cnt\":0}}"}} +{"add":{"path":"date=20180512/city=sh/part-00004-4d39fa0a-62f7-4045-b2c4-1e860e6379e7.c000.snappy.parquet","partitionValues":{"date":"20180512","city":"sh"},"size":683,"modificationTime":1713956584979,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"name\":\"Jay\",\"cnt\":4},\"maxValues\":{\"name\":\"Jay\",\"cnt\":4},\"nullCount\":{\"name\":0,\"cnt\":0}}"}} diff --git a/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/_delta_log/00000000000000000001.json b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/_delta_log/00000000000000000001.json new file mode 100644 index 0000000000000..1f6c828d7ee45 --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/_delta_log/00000000000000000001.json @@ -0,0 +1,3 @@ +{"commitInfo":{"timestamp":1713956588418,"operation":"SET TBLPROPERTIES","operationParameters":{"properties":"{\"delta.minReaderVersion\":\"3\",\"delta.minWriterVersion\":\"7\"}"},"readVersion":0,"isolationLevel":"Serializable","isBlindAppend":true,"operationMetrics":{},"engineInfo":"Apache-Spark/3.5.1 Delta-Lake/3.1.0","txnId":"00d3656c-4f8a-4b56-8fb6-8c31266936bd"}} +{"metaData":{"id":"eec3641b-b02a-4da0-b502-eb4149c4ddb1","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"city\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}},{\"name\":\"date\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}},{\"name\":\"name\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}},{\"name\":\"cnt\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":["date","city"],"configuration":{},"createdTime":1713956583685}} +{"protocol":{"minReaderVersion":3,"minWriterVersion":7,"readerFeatures":[],"writerFeatures":["appendOnly","invariants"]}} diff --git a/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20180512/city=sh/.part-00004-4d39fa0a-62f7-4045-b2c4-1e860e6379e7.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20180512/city=sh/.part-00004-4d39fa0a-62f7-4045-b2c4-1e860e6379e7.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..175c150206759 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20180512/city=sh/.part-00004-4d39fa0a-62f7-4045-b2c4-1e860e6379e7.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20180512/city=sh/part-00004-4d39fa0a-62f7-4045-b2c4-1e860e6379e7.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20180512/city=sh/part-00004-4d39fa0a-62f7-4045-b2c4-1e860e6379e7.c000.snappy.parquet new file mode 100644 index 0000000000000..f275079cd30f8 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20180512/city=sh/part-00004-4d39fa0a-62f7-4045-b2c4-1e860e6379e7.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20180520/city=bj/.part-00000-fe79b4e1-aaca-4bef-9a72-00c6def5b90c.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20180520/city=bj/.part-00000-fe79b4e1-aaca-4bef-9a72-00c6def5b90c.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..2157ba0fe3ea8 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20180520/city=bj/.part-00000-fe79b4e1-aaca-4bef-9a72-00c6def5b90c.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20180520/city=bj/part-00000-fe79b4e1-aaca-4bef-9a72-00c6def5b90c.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20180520/city=bj/part-00000-fe79b4e1-aaca-4bef-9a72-00c6def5b90c.c000.snappy.parquet new file mode 100644 index 0000000000000..242ded658f82a Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20180520/city=bj/part-00000-fe79b4e1-aaca-4bef-9a72-00c6def5b90c.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20180520/city=hz/.part-00003-6dbf3cc5-0294-49d5-a40f-79c05a093c66.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20180520/city=hz/.part-00003-6dbf3cc5-0294-49d5-a40f-79c05a093c66.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..153bb6311d9e8 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20180520/city=hz/.part-00003-6dbf3cc5-0294-49d5-a40f-79c05a093c66.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20180520/city=hz/part-00003-6dbf3cc5-0294-49d5-a40f-79c05a093c66.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20180520/city=hz/part-00003-6dbf3cc5-0294-49d5-a40f-79c05a093c66.c000.snappy.parquet new file mode 100644 index 0000000000000..7eb41c4261745 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20180520/city=hz/part-00003-6dbf3cc5-0294-49d5-a40f-79c05a093c66.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20180718/city=hz/.part-00002-f7dbf1cd-7f74-40c2-b097-832286326b3e.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20180718/city=hz/.part-00002-f7dbf1cd-7f74-40c2-b097-832286326b3e.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..1010a4c01f819 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20180718/city=hz/.part-00002-f7dbf1cd-7f74-40c2-b097-832286326b3e.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20180718/city=hz/part-00002-f7dbf1cd-7f74-40c2-b097-832286326b3e.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20180718/city=hz/part-00002-f7dbf1cd-7f74-40c2-b097-832286326b3e.c000.snappy.parquet new file mode 100644 index 0000000000000..81c723dbbb3db Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20180718/city=hz/part-00002-f7dbf1cd-7f74-40c2-b097-832286326b3e.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20181212/city=sz/.part-00001-b2e29782-7e1e-4819-a241-b5a9b5e910e8.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20181212/city=sz/.part-00001-b2e29782-7e1e-4819-a241-b5a9b5e910e8.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..669f327ffb054 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20181212/city=sz/.part-00001-b2e29782-7e1e-4819-a241-b5a9b5e910e8.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20181212/city=sz/part-00001-b2e29782-7e1e-4819-a241-b5a9b5e910e8.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20181212/city=sz/part-00001-b2e29782-7e1e-4819-a241-b5a9b5e910e8.c000.snappy.parquet new file mode 100644 index 0000000000000..b27667999a7fc Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/deltatbl-partition-prune/date=20181212/city=sz/part-00001-b2e29782-7e1e-4819-a241-b5a9b5e910e8.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/snapshot-data3/.part-00000-0441e99a-c421-400e-83a1-212aa6c84c73-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/snapshot-data3/.part-00000-0441e99a-c421-400e-83a1-212aa6c84c73-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..f66b5b65e0e6a Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/snapshot-data3/.part-00000-0441e99a-c421-400e-83a1-212aa6c84c73-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/snapshot-data3/.part-00000-64680d94-9e18-4fa1-9ca9-f0cd8a9cfd11-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/snapshot-data3/.part-00000-64680d94-9e18-4fa1-9ca9-f0cd8a9cfd11-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..02716266145c8 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/snapshot-data3/.part-00000-64680d94-9e18-4fa1-9ca9-f0cd8a9cfd11-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/snapshot-data3/.part-00000-842017c2-3e02-44b5-a3d6-5b9ae1745045-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/snapshot-data3/.part-00000-842017c2-3e02-44b5-a3d6-5b9ae1745045-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..4f8c36bdd094f Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/snapshot-data3/.part-00000-842017c2-3e02-44b5-a3d6-5b9ae1745045-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/snapshot-data3/.part-00000-cb078bc1-0aeb-46ed-9cf8-74a843b32c8c-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/snapshot-data3/.part-00000-cb078bc1-0aeb-46ed-9cf8-74a843b32c8c-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..2b1ab4061b33b Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/snapshot-data3/.part-00000-cb078bc1-0aeb-46ed-9cf8-74a843b32c8c-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/snapshot-data3/.part-00001-34c8c673-3f44-4fa7-b94e-07357ec28a7d-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/snapshot-data3/.part-00001-34c8c673-3f44-4fa7-b94e-07357ec28a7d-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..0ea3aa2df28c7 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/snapshot-data3/.part-00001-34c8c673-3f44-4fa7-b94e-07357ec28a7d-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/snapshot-data3/.part-00001-9bf4b8f8-1b95-411b-bf10-28dc03aa9d2f-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/snapshot-data3/.part-00001-9bf4b8f8-1b95-411b-bf10-28dc03aa9d2f-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..692cee1e438a6 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/snapshot-data3/.part-00001-9bf4b8f8-1b95-411b-bf10-28dc03aa9d2f-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/snapshot-data3/.part-00001-b8249b87-0b7a-4461-8a8a-fa958802b523-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/snapshot-data3/.part-00001-b8249b87-0b7a-4461-8a8a-fa958802b523-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..7db783ac002c3 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/snapshot-data3/.part-00001-b8249b87-0b7a-4461-8a8a-fa958802b523-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/snapshot-data3/.part-00001-e62ca5a1-923c-4ee6-998b-c61d1cfb0b1c-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/snapshot-data3/.part-00001-e62ca5a1-923c-4ee6-998b-c61d1cfb0b1c-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..5c04eeeb2ec1f Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/snapshot-data3/.part-00001-e62ca5a1-923c-4ee6-998b-c61d1cfb0b1c-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/snapshot-data3/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v3/snapshot-data3/_delta_log/00000000000000000000.json new file mode 100644 index 0000000000000..491571a22c3f8 --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/snapshot-data3/_delta_log/00000000000000000000.json @@ -0,0 +1,5 @@ +{"commitInfo":{"timestamp":1603723967632,"operation":"WRITE","operationParameters":{"mode":"Append","partitionBy":"[]"},"isBlindAppend":true}} +{"protocol":{"minReaderVersion":1,"minWriterVersion":2}} +{"metaData":{"id":"93351cf1-c931-4326-88f0-d10e29e71b21","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"col1\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"col2\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":[],"configuration":{},"createdTime":1603723967515}} +{"add":{"path":"part-00000-0441e99a-c421-400e-83a1-212aa6c84c73-c000.snappy.parquet","partitionValues":{},"size":650,"modificationTime":1603723967000,"dataChange":true}} +{"add":{"path":"part-00001-34c8c673-3f44-4fa7-b94e-07357ec28a7d-c000.snappy.parquet","partitionValues":{},"size":650,"modificationTime":1603723967000,"dataChange":true}} diff --git a/presto-delta/src/test/resources/delta_v3/snapshot-data3/_delta_log/00000000000000000001.json b/presto-delta/src/test/resources/delta_v3/snapshot-data3/_delta_log/00000000000000000001.json new file mode 100644 index 0000000000000..db30a2fad634c --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/snapshot-data3/_delta_log/00000000000000000001.json @@ -0,0 +1,3 @@ +{"commitInfo":{"timestamp":1603723969055,"operation":"WRITE","operationParameters":{"mode":"Append","partitionBy":"[]"},"readVersion":0,"isBlindAppend":true}} +{"add":{"path":"part-00000-64680d94-9e18-4fa1-9ca9-f0cd8a9cfd11-c000.snappy.parquet","partitionValues":{},"size":649,"modificationTime":1603723969000,"dataChange":true}} +{"add":{"path":"part-00001-b8249b87-0b7a-4461-8a8a-fa958802b523-c000.snappy.parquet","partitionValues":{},"size":649,"modificationTime":1603723969000,"dataChange":true}} diff --git a/presto-delta/src/test/resources/delta_v3/snapshot-data3/_delta_log/00000000000000000002.json b/presto-delta/src/test/resources/delta_v3/snapshot-data3/_delta_log/00000000000000000002.json new file mode 100644 index 0000000000000..53eb414f095bd --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/snapshot-data3/_delta_log/00000000000000000002.json @@ -0,0 +1,7 @@ +{"commitInfo":{"timestamp":1603723970832,"operation":"WRITE","operationParameters":{"mode":"Overwrite","partitionBy":"[]"},"readVersion":1,"isBlindAppend":false}} +{"add":{"path":"part-00000-842017c2-3e02-44b5-a3d6-5b9ae1745045-c000.snappy.parquet","partitionValues":{},"size":649,"modificationTime":1603723970000,"dataChange":true}} +{"add":{"path":"part-00001-e62ca5a1-923c-4ee6-998b-c61d1cfb0b1c-c000.snappy.parquet","partitionValues":{},"size":649,"modificationTime":1603723970000,"dataChange":true}} +{"remove":{"path":"part-00000-0441e99a-c421-400e-83a1-212aa6c84c73-c000.snappy.parquet","deletionTimestamp":1603723970832,"dataChange":true}} +{"remove":{"path":"part-00000-64680d94-9e18-4fa1-9ca9-f0cd8a9cfd11-c000.snappy.parquet","deletionTimestamp":1603723970832,"dataChange":true}} +{"remove":{"path":"part-00001-b8249b87-0b7a-4461-8a8a-fa958802b523-c000.snappy.parquet","deletionTimestamp":1603723970832,"dataChange":true}} +{"remove":{"path":"part-00001-34c8c673-3f44-4fa7-b94e-07357ec28a7d-c000.snappy.parquet","deletionTimestamp":1603723970832,"dataChange":true}} diff --git a/presto-delta/src/test/resources/delta_v3/snapshot-data3/_delta_log/00000000000000000003.json b/presto-delta/src/test/resources/delta_v3/snapshot-data3/_delta_log/00000000000000000003.json new file mode 100644 index 0000000000000..6ba370acbe8c6 --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/snapshot-data3/_delta_log/00000000000000000003.json @@ -0,0 +1,3 @@ +{"commitInfo":{"timestamp":1603723972251,"operation":"WRITE","operationParameters":{"mode":"Append","partitionBy":"[]"},"readVersion":2,"isBlindAppend":true}} +{"add":{"path":"part-00000-cb078bc1-0aeb-46ed-9cf8-74a843b32c8c-c000.snappy.parquet","partitionValues":{},"size":687,"modificationTime":1603723972000,"dataChange":true}} +{"add":{"path":"part-00001-9bf4b8f8-1b95-411b-bf10-28dc03aa9d2f-c000.snappy.parquet","partitionValues":{},"size":705,"modificationTime":1603723972000,"dataChange":true}} diff --git a/presto-delta/src/test/resources/delta_v3/snapshot-data3/_delta_log/00000000000000000004.crc b/presto-delta/src/test/resources/delta_v3/snapshot-data3/_delta_log/00000000000000000004.crc new file mode 100644 index 0000000000000..1724b4ae80575 --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/snapshot-data3/_delta_log/00000000000000000004.crc @@ -0,0 +1 @@ +{"txnId":"5d5fd0e3-efaa-4ffd-b971-229d3b8f5869","tableSizeBytes":2690,"numFiles":4,"numMetadata":1,"numProtocol":1,"setTransactions":[],"domainMetadata":[],"metadata":{"id":"93351cf1-c931-4326-88f0-d10e29e71b21","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"col1\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"col2\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":[],"configuration":{},"createdTime":1603723967515},"protocol":{"minReaderVersion":3,"minWriterVersion":7,"readerFeatures":[],"writerFeatures":["appendOnly","invariants"]},"histogramOpt":{"sortedBinBoundaries":[0,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,12582912,16777216,20971520,25165824,29360128,33554432,37748736,41943040,50331648,58720256,67108864,75497472,83886080,92274688,100663296,109051904,117440512,125829120,130023424,134217728,138412032,142606336,146800640,150994944,167772160,184549376,201326592,218103808,234881024,251658240,268435456,285212672,301989888,318767104,335544320,352321536,369098752,385875968,402653184,419430400,436207616,452984832,469762048,486539264,503316480,520093696,536870912,553648128,570425344,587202560,603979776,671088640,738197504,805306368,872415232,939524096,1006632960,1073741824,1140850688,1207959552,1275068416,1342177280,1409286144,1476395008,1610612736,1744830464,1879048192,2013265920,2147483648,2415919104,2684354560,2952790016,3221225472,3489660928,3758096384,4026531840,4294967296,8589934592,17179869184,34359738368,68719476736,137438953472,274877906944],"fileCounts":[4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"totalBytes":[2690,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},"allFiles":[{"path":"part-00001-9bf4b8f8-1b95-411b-bf10-28dc03aa9d2f-c000.snappy.parquet","partitionValues":{},"size":705,"modificationTime":1603723972000,"dataChange":false},{"path":"part-00001-e62ca5a1-923c-4ee6-998b-c61d1cfb0b1c-c000.snappy.parquet","partitionValues":{},"size":649,"modificationTime":1603723970000,"dataChange":false},{"path":"part-00000-cb078bc1-0aeb-46ed-9cf8-74a843b32c8c-c000.snappy.parquet","partitionValues":{},"size":687,"modificationTime":1603723972000,"dataChange":false},{"path":"part-00000-842017c2-3e02-44b5-a3d6-5b9ae1745045-c000.snappy.parquet","partitionValues":{},"size":649,"modificationTime":1603723970000,"dataChange":false}]} diff --git a/presto-delta/src/test/resources/delta_v3/snapshot-data3/_delta_log/00000000000000000004.json b/presto-delta/src/test/resources/delta_v3/snapshot-data3/_delta_log/00000000000000000004.json new file mode 100644 index 0000000000000..11d0c0691feb7 --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/snapshot-data3/_delta_log/00000000000000000004.json @@ -0,0 +1,3 @@ +{"commitInfo":{"timestamp":1719316991934,"userId":"4331016811320670","userName":"mblanco@denodo.com","operation":"SET TBLPROPERTIES","operationParameters":{"properties":"{\"delta.minReaderVersion\":\"3\",\"delta.minWriterVersion\":\"7\"}"},"readVersion":3,"isolationLevel":"WriteSerializable","isBlindAppend":true,"operationMetrics":{},"engineInfo":"Databricks-Runtime/15.1.x-photon-scala2.12","txnId":"5d5fd0e3-efaa-4ffd-b971-229d3b8f5869"}} +{"metaData":{"id":"93351cf1-c931-4326-88f0-d10e29e71b21","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"col1\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"col2\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":[],"configuration":{},"createdTime":1603723967515}} +{"protocol":{"minReaderVersion":3,"minWriterVersion":7,"readerFeatures":[],"writerFeatures":["appendOnly","invariants"]}} diff --git a/presto-delta/src/test/resources/delta_v3/snapshot-data3/part-00000-0441e99a-c421-400e-83a1-212aa6c84c73-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/snapshot-data3/part-00000-0441e99a-c421-400e-83a1-212aa6c84c73-c000.snappy.parquet new file mode 100644 index 0000000000000..7d1ff564e1e67 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/snapshot-data3/part-00000-0441e99a-c421-400e-83a1-212aa6c84c73-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/snapshot-data3/part-00000-64680d94-9e18-4fa1-9ca9-f0cd8a9cfd11-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/snapshot-data3/part-00000-64680d94-9e18-4fa1-9ca9-f0cd8a9cfd11-c000.snappy.parquet new file mode 100644 index 0000000000000..198eea06e5f10 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/snapshot-data3/part-00000-64680d94-9e18-4fa1-9ca9-f0cd8a9cfd11-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/snapshot-data3/part-00000-842017c2-3e02-44b5-a3d6-5b9ae1745045-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/snapshot-data3/part-00000-842017c2-3e02-44b5-a3d6-5b9ae1745045-c000.snappy.parquet new file mode 100644 index 0000000000000..81cc32d326182 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/snapshot-data3/part-00000-842017c2-3e02-44b5-a3d6-5b9ae1745045-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/snapshot-data3/part-00000-cb078bc1-0aeb-46ed-9cf8-74a843b32c8c-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/snapshot-data3/part-00000-cb078bc1-0aeb-46ed-9cf8-74a843b32c8c-c000.snappy.parquet new file mode 100644 index 0000000000000..24104a72ca747 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/snapshot-data3/part-00000-cb078bc1-0aeb-46ed-9cf8-74a843b32c8c-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/snapshot-data3/part-00001-34c8c673-3f44-4fa7-b94e-07357ec28a7d-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/snapshot-data3/part-00001-34c8c673-3f44-4fa7-b94e-07357ec28a7d-c000.snappy.parquet new file mode 100644 index 0000000000000..43b74e3d07f80 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/snapshot-data3/part-00001-34c8c673-3f44-4fa7-b94e-07357ec28a7d-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/snapshot-data3/part-00001-9bf4b8f8-1b95-411b-bf10-28dc03aa9d2f-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/snapshot-data3/part-00001-9bf4b8f8-1b95-411b-bf10-28dc03aa9d2f-c000.snappy.parquet new file mode 100644 index 0000000000000..33d14ac582759 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/snapshot-data3/part-00001-9bf4b8f8-1b95-411b-bf10-28dc03aa9d2f-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/snapshot-data3/part-00001-b8249b87-0b7a-4461-8a8a-fa958802b523-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/snapshot-data3/part-00001-b8249b87-0b7a-4461-8a8a-fa958802b523-c000.snappy.parquet new file mode 100644 index 0000000000000..6f0c663ee61ab Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/snapshot-data3/part-00001-b8249b87-0b7a-4461-8a8a-fa958802b523-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/snapshot-data3/part-00001-e62ca5a1-923c-4ee6-998b-c61d1cfb0b1c-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/snapshot-data3/part-00001-e62ca5a1-923c-4ee6-998b-c61d1cfb0b1c-c000.snappy.parquet new file mode 100644 index 0000000000000..5eeb30b719feb Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/snapshot-data3/part-00001-e62ca5a1-923c-4ee6-998b-c61d1cfb0b1c-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-lowercase/.part-00000-a90a1e4f-c526-4f44-ad35-4a25f4fd2be7-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-lowercase/.part-00000-a90a1e4f-c526-4f44-ad35-4a25f4fd2be7-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..1ce0152421782 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-lowercase/.part-00000-a90a1e4f-c526-4f44-ad35-4a25f4fd2be7-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-lowercase/.part-00002-d3dc64e6-0bf0-409b-a56d-7d24360e8f89-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-lowercase/.part-00002-d3dc64e6-0bf0-409b-a56d-7d24360e8f89-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..3ff06efaf05aa Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-lowercase/.part-00002-d3dc64e6-0bf0-409b-a56d-7d24360e8f89-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-lowercase/.part-00005-f46ce121-5930-4cb7-855a-1f7499b215f9-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-lowercase/.part-00005-f46ce121-5930-4cb7-855a-1f7499b215f9-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..8ba7de0068b3e Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-lowercase/.part-00005-f46ce121-5930-4cb7-855a-1f7499b215f9-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-lowercase/.part-00007-0f168d4b-1c64-4d11-8c80-aee4bf0ae8ba-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-lowercase/.part-00007-0f168d4b-1c64-4d11-8c80-aee4bf0ae8ba-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..4f5e39366c67f Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-lowercase/.part-00007-0f168d4b-1c64-4d11-8c80-aee4bf0ae8ba-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-lowercase/_delta_log/.00000000000000000000.json.crc b/presto-delta/src/test/resources/delta_v3/test-lowercase/_delta_log/.00000000000000000000.json.crc new file mode 100644 index 0000000000000..4ce0ae2dffcdd Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-lowercase/_delta_log/.00000000000000000000.json.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-lowercase/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v3/test-lowercase/_delta_log/00000000000000000000.json new file mode 100644 index 0000000000000..b0627ed11a56c --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/test-lowercase/_delta_log/00000000000000000000.json @@ -0,0 +1,6 @@ +{"commitInfo":{"timestamp":1720604567475,"operation":"WRITE","operationParameters":{"mode":"Overwrite","partitionBy":"[]"},"isolationLevel":"Serializable","isBlindAppend":false,"operationMetrics":{"numFiles":"4","numOutputRows":"3","numOutputBytes":"3576"},"engineInfo":"Apache-Spark/3.5.1 Delta-Lake/3.2.0","txnId":"67355d2e-42f7-4619-a17e-572087d69704"}} +{"metaData":{"id":"95fc984f-547c-4178-af5f-acce3bac1350","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"id\",\"type\":\"long\",\"nullable\":true,\"metadata\":{}},{\"name\":\"ucolumnname\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}},{\"name\":\"lcolumnname\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":[],"configuration":{},"createdTime":1720604554348}} +{"protocol":{"minReaderVersion":1,"minWriterVersion":2}} +{"add":{"path":"part-00002-d3dc64e6-0bf0-409b-a56d-7d24360e8f89-c000.snappy.parquet","partitionValues":{},"size":1029,"modificationTime":1720604565245,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":1,\"ucolumnname\":\"column1\",\"lcolumnname\":\"column1\"},\"maxValues\":{\"id\":1,\"ucolumnname\":\"column1\",\"lcolumnname\":\"column1\"},\"nullCount\":{\"id\":0,\"ucolumnname\":0,\"lcolumnname\":0}}"}} +{"add":{"path":"part-00005-f46ce121-5930-4cb7-855a-1f7499b215f9-c000.snappy.parquet","partitionValues":{},"size":1029,"modificationTime":1720604565244,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":2,\"ucolumnname\":\"column2\",\"lcolumnname\":\"column2\"},\"maxValues\":{\"id\":2,\"ucolumnname\":\"column2\",\"lcolumnname\":\"column2\"},\"nullCount\":{\"id\":0,\"ucolumnname\":0,\"lcolumnname\":0}}"}} +{"add":{"path":"part-00007-0f168d4b-1c64-4d11-8c80-aee4bf0ae8ba-c000.snappy.parquet","partitionValues":{},"size":1029,"modificationTime":1720604565246,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":3,\"ucolumnname\":\"column3\",\"lcolumnname\":\"column3\"},\"maxValues\":{\"id\":3,\"ucolumnname\":\"column3\",\"lcolumnname\":\"column3\"},\"nullCount\":{\"id\":0,\"ucolumnname\":0,\"lcolumnname\":0}}"}} diff --git a/presto-delta/src/test/resources/delta_v3/test-lowercase/part-00000-a90a1e4f-c526-4f44-ad35-4a25f4fd2be7-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-lowercase/part-00000-a90a1e4f-c526-4f44-ad35-4a25f4fd2be7-c000.snappy.parquet new file mode 100644 index 0000000000000..5ce615c792163 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-lowercase/part-00000-a90a1e4f-c526-4f44-ad35-4a25f4fd2be7-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-lowercase/part-00002-d3dc64e6-0bf0-409b-a56d-7d24360e8f89-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-lowercase/part-00002-d3dc64e6-0bf0-409b-a56d-7d24360e8f89-c000.snappy.parquet new file mode 100644 index 0000000000000..6c88fd5b94398 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-lowercase/part-00002-d3dc64e6-0bf0-409b-a56d-7d24360e8f89-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-lowercase/part-00005-f46ce121-5930-4cb7-855a-1f7499b215f9-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-lowercase/part-00005-f46ce121-5930-4cb7-855a-1f7499b215f9-c000.snappy.parquet new file mode 100644 index 0000000000000..8e31bd662444a Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-lowercase/part-00005-f46ce121-5930-4cb7-855a-1f7499b215f9-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-lowercase/part-00007-0f168d4b-1c64-4d11-8c80-aee4bf0ae8ba-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-lowercase/part-00007-0f168d4b-1c64-4d11-8c80-aee4bf0ae8ba-c000.snappy.parquet new file mode 100644 index 0000000000000..a3ad3e87e9b89 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-lowercase/part-00007-0f168d4b-1c64-4d11-8c80-aee4bf0ae8ba-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/_delta_log/.00000000000000000000.json.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/_delta_log/.00000000000000000000.json.crc new file mode 100644 index 0000000000000..27c5b6fc19809 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/_delta_log/.00000000000000000000.json.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/_delta_log/.00000000000000000001.json.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/_delta_log/.00000000000000000001.json.crc new file mode 100644 index 0000000000000..75bb47d98d026 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/_delta_log/.00000000000000000001.json.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/_delta_log/00000000000000000000.json new file mode 100644 index 0000000000000..db361ed266a1d --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/_delta_log/00000000000000000000.json @@ -0,0 +1,16 @@ +{"commitInfo":{"timestamp":1713949360776,"operation":"WRITE","operationParameters":{"mode":"Overwrite","partitionBy":"[\"birth_year\"]"},"isolationLevel":"Serializable","isBlindAppend":false,"operationMetrics":{"numFiles":"13","numOutputRows":"14","numOutputBytes":"5881"},"engineInfo":"Apache-Spark/3.5.1 Delta-Lake/3.1.0","txnId":"8f464bf9-a03d-431a-94b8-af722bce3855"}} +{"metaData":{"id":"22f5303c-1c47-48bc-b578-81725b2f6d0f","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"id\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"birth_year\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":["birth_year"],"configuration":{},"createdTime":1713949359089}} +{"protocol":{"minReaderVersion":1,"minWriterVersion":2}} +{"add":{"path":"birth_year=1991/part-00000-ef621d70-dcb7-40b8-b391-c915e54578e0.c000.snappy.parquet","partitionValues":{"birth_year":"1991"},"size":457,"modificationTime":1713949360363,"dataChange":true,"stats":"{\"numRecords\":2,\"minValues\":{\"id\":5},\"maxValues\":{\"id\":14},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"birth_year=1989/part-00001-e1f83a41-9548-4c88-a6c7-6bad89420776.c000.snappy.parquet","partitionValues":{"birth_year":"1989"},"size":452,"modificationTime":1713949360363,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":12},\"maxValues\":{\"id\":12},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"birth_year=1991/part-00001-0af47301-edc9-4bda-ade7-c0ab17933654.c000.snappy.parquet","partitionValues":{"birth_year":"1991"},"size":452,"modificationTime":1713949360441,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":7},\"maxValues\":{\"id\":7},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"birth_year=1981/part-00002-ebbb0a3a-0bd8-43ca-945e-a0ad938e56f4.c000.snappy.parquet","partitionValues":{"birth_year":"1981"},"size":452,"modificationTime":1713949360363,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":8},\"maxValues\":{\"id\":8},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"birth_year=1989/part-00002-f40d1bcb-0cf4-4d02-8ff8-5dcf0511833c.c000.snappy.parquet","partitionValues":{"birth_year":"1989"},"size":452,"modificationTime":1713949360407,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":1},\"maxValues\":{\"id\":1},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"birth_year=1985/part-00003-3e7e1614-add1-41ea-91a7-c0205515cc11.c000.snappy.parquet","partitionValues":{"birth_year":"1985"},"size":452,"modificationTime":1713949360363,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":11},\"maxValues\":{\"id\":11},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"birth_year=1999/part-00003-c308586a-40e9-4dcd-9837-f08cb65f5eed.c000.snappy.parquet","partitionValues":{"birth_year":"1999"},"size":452,"modificationTime":1713949360407,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":4},\"maxValues\":{\"id\":4},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"birth_year=1985/part-00004-18dc7f87-95ac-415a-8be1-e9026bdc1309.c000.snappy.parquet","partitionValues":{"birth_year":"1985"},"size":452,"modificationTime":1713949360363,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":3},\"maxValues\":{\"id\":3},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"birth_year=1991/part-00004-2070fd43-0a25-4b00-920c-4fddcaefd63b.c000.snappy.parquet","partitionValues":{"birth_year":"1991"},"size":452,"modificationTime":1713949360408,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":6},\"maxValues\":{\"id\":6},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"birth_year=1993/part-00005-02afd234-0c50-40aa-860e-10ddc7d2e35b.c000.snappy.parquet","partitionValues":{"birth_year":"1993"},"size":452,"modificationTime":1713949360363,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":10},\"maxValues\":{\"id\":10},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"birth_year=1994/part-00005-59f727dd-7597-47ef-96ff-c83eebe882e5.c000.snappy.parquet","partitionValues":{"birth_year":"1994"},"size":452,"modificationTime":1713949360407,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":9},\"maxValues\":{\"id\":9},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"birth_year=1985/part-00006-07651b7b-32e7-4638-bf6b-1099e5fe7dae.c000.snappy.parquet","partitionValues":{"birth_year":"1985"},"size":452,"modificationTime":1713949360363,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":13},\"maxValues\":{\"id\":13},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"birth_year=1986/part-00006-b98aa941-fb21-482a-a9ed-b78bb7d435b0.c000.snappy.parquet","partitionValues":{"birth_year":"1986"},"size":452,"modificationTime":1713949360407,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":2},\"maxValues\":{\"id\":2},\"nullCount\":{\"id\":0}}"}} diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/_delta_log/00000000000000000001.json b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/_delta_log/00000000000000000001.json new file mode 100644 index 0000000000000..d35b93423090a --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/_delta_log/00000000000000000001.json @@ -0,0 +1,3 @@ +{"commitInfo":{"timestamp":1713949364006,"operation":"SET TBLPROPERTIES","operationParameters":{"properties":"{\"delta.minReaderVersion\":\"3\",\"delta.minWriterVersion\":\"7\"}"},"readVersion":0,"isolationLevel":"Serializable","isBlindAppend":true,"operationMetrics":{},"engineInfo":"Apache-Spark/3.5.1 Delta-Lake/3.1.0","txnId":"da3fa691-c0bd-40f5-af14-26bb55ffcf86"}} +{"metaData":{"id":"22f5303c-1c47-48bc-b578-81725b2f6d0f","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"id\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"birth_year\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":["birth_year"],"configuration":{},"createdTime":1713949359089}} +{"protocol":{"minReaderVersion":3,"minWriterVersion":7,"readerFeatures":[],"writerFeatures":["appendOnly","invariants"]}} diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1981/.part-00002-ebbb0a3a-0bd8-43ca-945e-a0ad938e56f4.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1981/.part-00002-ebbb0a3a-0bd8-43ca-945e-a0ad938e56f4.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..ef0e54d75c738 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1981/.part-00002-ebbb0a3a-0bd8-43ca-945e-a0ad938e56f4.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1981/part-00002-ebbb0a3a-0bd8-43ca-945e-a0ad938e56f4.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1981/part-00002-ebbb0a3a-0bd8-43ca-945e-a0ad938e56f4.c000.snappy.parquet new file mode 100644 index 0000000000000..74dced4714498 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1981/part-00002-ebbb0a3a-0bd8-43ca-945e-a0ad938e56f4.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1985/.part-00003-3e7e1614-add1-41ea-91a7-c0205515cc11.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1985/.part-00003-3e7e1614-add1-41ea-91a7-c0205515cc11.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..4f2e7c7f87ecb Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1985/.part-00003-3e7e1614-add1-41ea-91a7-c0205515cc11.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1985/.part-00004-18dc7f87-95ac-415a-8be1-e9026bdc1309.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1985/.part-00004-18dc7f87-95ac-415a-8be1-e9026bdc1309.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..4083255799226 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1985/.part-00004-18dc7f87-95ac-415a-8be1-e9026bdc1309.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1985/.part-00006-07651b7b-32e7-4638-bf6b-1099e5fe7dae.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1985/.part-00006-07651b7b-32e7-4638-bf6b-1099e5fe7dae.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..34d0d8887a71e Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1985/.part-00006-07651b7b-32e7-4638-bf6b-1099e5fe7dae.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1985/part-00003-3e7e1614-add1-41ea-91a7-c0205515cc11.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1985/part-00003-3e7e1614-add1-41ea-91a7-c0205515cc11.c000.snappy.parquet new file mode 100644 index 0000000000000..96450b5e40dac Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1985/part-00003-3e7e1614-add1-41ea-91a7-c0205515cc11.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1985/part-00004-18dc7f87-95ac-415a-8be1-e9026bdc1309.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1985/part-00004-18dc7f87-95ac-415a-8be1-e9026bdc1309.c000.snappy.parquet new file mode 100644 index 0000000000000..c4bf2bcc8d2a1 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1985/part-00004-18dc7f87-95ac-415a-8be1-e9026bdc1309.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1985/part-00006-07651b7b-32e7-4638-bf6b-1099e5fe7dae.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1985/part-00006-07651b7b-32e7-4638-bf6b-1099e5fe7dae.c000.snappy.parquet new file mode 100644 index 0000000000000..5934ca31c1a8b Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1985/part-00006-07651b7b-32e7-4638-bf6b-1099e5fe7dae.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1986/.part-00006-b98aa941-fb21-482a-a9ed-b78bb7d435b0.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1986/.part-00006-b98aa941-fb21-482a-a9ed-b78bb7d435b0.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..7c9048251a6ae Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1986/.part-00006-b98aa941-fb21-482a-a9ed-b78bb7d435b0.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1986/part-00006-b98aa941-fb21-482a-a9ed-b78bb7d435b0.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1986/part-00006-b98aa941-fb21-482a-a9ed-b78bb7d435b0.c000.snappy.parquet new file mode 100644 index 0000000000000..99a17cec26b8c Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1986/part-00006-b98aa941-fb21-482a-a9ed-b78bb7d435b0.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1989/.part-00001-e1f83a41-9548-4c88-a6c7-6bad89420776.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1989/.part-00001-e1f83a41-9548-4c88-a6c7-6bad89420776.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..8ac84f5ed85b1 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1989/.part-00001-e1f83a41-9548-4c88-a6c7-6bad89420776.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1989/.part-00002-f40d1bcb-0cf4-4d02-8ff8-5dcf0511833c.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1989/.part-00002-f40d1bcb-0cf4-4d02-8ff8-5dcf0511833c.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..f1fb065f8fcd8 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1989/.part-00002-f40d1bcb-0cf4-4d02-8ff8-5dcf0511833c.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1989/part-00001-e1f83a41-9548-4c88-a6c7-6bad89420776.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1989/part-00001-e1f83a41-9548-4c88-a6c7-6bad89420776.c000.snappy.parquet new file mode 100644 index 0000000000000..90e0ade98b766 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1989/part-00001-e1f83a41-9548-4c88-a6c7-6bad89420776.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1989/part-00002-f40d1bcb-0cf4-4d02-8ff8-5dcf0511833c.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1989/part-00002-f40d1bcb-0cf4-4d02-8ff8-5dcf0511833c.c000.snappy.parquet new file mode 100644 index 0000000000000..dd155aa51b97e Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1989/part-00002-f40d1bcb-0cf4-4d02-8ff8-5dcf0511833c.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1991/.part-00000-ef621d70-dcb7-40b8-b391-c915e54578e0.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1991/.part-00000-ef621d70-dcb7-40b8-b391-c915e54578e0.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..287131a833a38 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1991/.part-00000-ef621d70-dcb7-40b8-b391-c915e54578e0.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1991/.part-00001-0af47301-edc9-4bda-ade7-c0ab17933654.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1991/.part-00001-0af47301-edc9-4bda-ade7-c0ab17933654.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..66b6bf8b3a4fd Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1991/.part-00001-0af47301-edc9-4bda-ade7-c0ab17933654.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1991/.part-00004-2070fd43-0a25-4b00-920c-4fddcaefd63b.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1991/.part-00004-2070fd43-0a25-4b00-920c-4fddcaefd63b.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..4e2c8a4cf631e Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1991/.part-00004-2070fd43-0a25-4b00-920c-4fddcaefd63b.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1991/part-00000-ef621d70-dcb7-40b8-b391-c915e54578e0.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1991/part-00000-ef621d70-dcb7-40b8-b391-c915e54578e0.c000.snappy.parquet new file mode 100644 index 0000000000000..6641255e87684 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1991/part-00000-ef621d70-dcb7-40b8-b391-c915e54578e0.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1991/part-00001-0af47301-edc9-4bda-ade7-c0ab17933654.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1991/part-00001-0af47301-edc9-4bda-ade7-c0ab17933654.c000.snappy.parquet new file mode 100644 index 0000000000000..ee3bee1541aea Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1991/part-00001-0af47301-edc9-4bda-ade7-c0ab17933654.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1991/part-00004-2070fd43-0a25-4b00-920c-4fddcaefd63b.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1991/part-00004-2070fd43-0a25-4b00-920c-4fddcaefd63b.c000.snappy.parquet new file mode 100644 index 0000000000000..fd6c943fcf450 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1991/part-00004-2070fd43-0a25-4b00-920c-4fddcaefd63b.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1993/.part-00005-02afd234-0c50-40aa-860e-10ddc7d2e35b.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1993/.part-00005-02afd234-0c50-40aa-860e-10ddc7d2e35b.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..d57c12c6f9420 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1993/.part-00005-02afd234-0c50-40aa-860e-10ddc7d2e35b.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1993/part-00005-02afd234-0c50-40aa-860e-10ddc7d2e35b.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1993/part-00005-02afd234-0c50-40aa-860e-10ddc7d2e35b.c000.snappy.parquet new file mode 100644 index 0000000000000..c617e69b2f030 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1993/part-00005-02afd234-0c50-40aa-860e-10ddc7d2e35b.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1994/.part-00005-59f727dd-7597-47ef-96ff-c83eebe882e5.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1994/.part-00005-59f727dd-7597-47ef-96ff-c83eebe882e5.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..b9d14db2f90bd Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1994/.part-00005-59f727dd-7597-47ef-96ff-c83eebe882e5.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1994/part-00005-59f727dd-7597-47ef-96ff-c83eebe882e5.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1994/part-00005-59f727dd-7597-47ef-96ff-c83eebe882e5.c000.snappy.parquet new file mode 100644 index 0000000000000..d62574e725061 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1994/part-00005-59f727dd-7597-47ef-96ff-c83eebe882e5.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1999/.part-00003-c308586a-40e9-4dcd-9837-f08cb65f5eed.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1999/.part-00003-c308586a-40e9-4dcd-9837-f08cb65f5eed.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..a533a5438f84a Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1999/.part-00003-c308586a-40e9-4dcd-9837-f08cb65f5eed.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1999/part-00003-c308586a-40e9-4dcd-9837-f08cb65f5eed.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1999/part-00003-c308586a-40e9-4dcd-9837-f08cb65f5eed.c000.snappy.parquet new file mode 100644 index 0000000000000..3b43239cbc0b9 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-lowercase/birth_year=1999/part-00003-c308586a-40e9-4dcd-9837-f08cb65f5eed.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1981/.part-00002-541f0ff8-f399-4095-b63d-289e15c401ea.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1981/.part-00002-541f0ff8-f399-4095-b63d-289e15c401ea.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..817df3888a6ec Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1981/.part-00002-541f0ff8-f399-4095-b63d-289e15c401ea.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1981/part-00002-541f0ff8-f399-4095-b63d-289e15c401ea.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1981/part-00002-541f0ff8-f399-4095-b63d-289e15c401ea.c000.snappy.parquet new file mode 100644 index 0000000000000..a4c01b229f337 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1981/part-00002-541f0ff8-f399-4095-b63d-289e15c401ea.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1985/.part-00003-d9b49db4-8ee1-443c-b30c-556080517199.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1985/.part-00003-d9b49db4-8ee1-443c-b30c-556080517199.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..bb3e0283c80f4 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1985/.part-00003-d9b49db4-8ee1-443c-b30c-556080517199.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1985/.part-00004-ebbbe213-7720-4d7c-91a4-8c7444573266.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1985/.part-00004-ebbbe213-7720-4d7c-91a4-8c7444573266.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..0c735d9ef8dc4 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1985/.part-00004-ebbbe213-7720-4d7c-91a4-8c7444573266.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1985/.part-00006-3a9a8636-965a-43eb-9cbd-9f0afde18ed2.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1985/.part-00006-3a9a8636-965a-43eb-9cbd-9f0afde18ed2.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..e91fa82e86a6d Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1985/.part-00006-3a9a8636-965a-43eb-9cbd-9f0afde18ed2.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1985/part-00003-d9b49db4-8ee1-443c-b30c-556080517199.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1985/part-00003-d9b49db4-8ee1-443c-b30c-556080517199.c000.snappy.parquet new file mode 100644 index 0000000000000..9a0ba706ed3cc Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1985/part-00003-d9b49db4-8ee1-443c-b30c-556080517199.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1985/part-00004-ebbbe213-7720-4d7c-91a4-8c7444573266.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1985/part-00004-ebbbe213-7720-4d7c-91a4-8c7444573266.c000.snappy.parquet new file mode 100644 index 0000000000000..b524708b6d7fa Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1985/part-00004-ebbbe213-7720-4d7c-91a4-8c7444573266.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1985/part-00006-3a9a8636-965a-43eb-9cbd-9f0afde18ed2.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1985/part-00006-3a9a8636-965a-43eb-9cbd-9f0afde18ed2.c000.snappy.parquet new file mode 100644 index 0000000000000..0f021c85786d4 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1985/part-00006-3a9a8636-965a-43eb-9cbd-9f0afde18ed2.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1986/.part-00006-51231cb8-4cd3-4b1c-997c-de6fcf940f22.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1986/.part-00006-51231cb8-4cd3-4b1c-997c-de6fcf940f22.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..bc4622b256e23 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1986/.part-00006-51231cb8-4cd3-4b1c-997c-de6fcf940f22.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1986/part-00006-51231cb8-4cd3-4b1c-997c-de6fcf940f22.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1986/part-00006-51231cb8-4cd3-4b1c-997c-de6fcf940f22.c000.snappy.parquet new file mode 100644 index 0000000000000..25a6ebf02076d Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1986/part-00006-51231cb8-4cd3-4b1c-997c-de6fcf940f22.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1989/.part-00001-2dba4ccf-bbcd-4088-a34a-a0ed6ed00f00.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1989/.part-00001-2dba4ccf-bbcd-4088-a34a-a0ed6ed00f00.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..9238aea6fa5c9 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1989/.part-00001-2dba4ccf-bbcd-4088-a34a-a0ed6ed00f00.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1989/.part-00002-8354f522-7f84-4b2f-9bc0-ae7baea3f719.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1989/.part-00002-8354f522-7f84-4b2f-9bc0-ae7baea3f719.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..fed22e55c68f1 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1989/.part-00002-8354f522-7f84-4b2f-9bc0-ae7baea3f719.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1989/part-00001-2dba4ccf-bbcd-4088-a34a-a0ed6ed00f00.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1989/part-00001-2dba4ccf-bbcd-4088-a34a-a0ed6ed00f00.c000.snappy.parquet new file mode 100644 index 0000000000000..1d7d205551606 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1989/part-00001-2dba4ccf-bbcd-4088-a34a-a0ed6ed00f00.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1989/part-00002-8354f522-7f84-4b2f-9bc0-ae7baea3f719.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1989/part-00002-8354f522-7f84-4b2f-9bc0-ae7baea3f719.c000.snappy.parquet new file mode 100644 index 0000000000000..9d69eeeb6ec6f Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1989/part-00002-8354f522-7f84-4b2f-9bc0-ae7baea3f719.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1991/.part-00000-c6ca97f6-1ef6-432f-a4ec-a4675be3c7af.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1991/.part-00000-c6ca97f6-1ef6-432f-a4ec-a4675be3c7af.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..823b8806d3e14 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1991/.part-00000-c6ca97f6-1ef6-432f-a4ec-a4675be3c7af.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1991/.part-00001-782da9d6-35c0-400c-a79e-acc620f10122.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1991/.part-00001-782da9d6-35c0-400c-a79e-acc620f10122.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..8c2020459e020 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1991/.part-00001-782da9d6-35c0-400c-a79e-acc620f10122.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1991/.part-00004-05892139-fe13-4344-b069-ac213044a04c.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1991/.part-00004-05892139-fe13-4344-b069-ac213044a04c.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..5b173107b0838 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1991/.part-00004-05892139-fe13-4344-b069-ac213044a04c.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1991/part-00000-c6ca97f6-1ef6-432f-a4ec-a4675be3c7af.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1991/part-00000-c6ca97f6-1ef6-432f-a4ec-a4675be3c7af.c000.snappy.parquet new file mode 100644 index 0000000000000..6e87a6aec30d7 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1991/part-00000-c6ca97f6-1ef6-432f-a4ec-a4675be3c7af.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1991/part-00001-782da9d6-35c0-400c-a79e-acc620f10122.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1991/part-00001-782da9d6-35c0-400c-a79e-acc620f10122.c000.snappy.parquet new file mode 100644 index 0000000000000..b6b1ce99fdae9 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1991/part-00001-782da9d6-35c0-400c-a79e-acc620f10122.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1991/part-00004-05892139-fe13-4344-b069-ac213044a04c.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1991/part-00004-05892139-fe13-4344-b069-ac213044a04c.c000.snappy.parquet new file mode 100644 index 0000000000000..98e02e523ed65 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1991/part-00004-05892139-fe13-4344-b069-ac213044a04c.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1993/.part-00005-7f1cdbf0-4ad2-42ce-b941-0ab2775278dc.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1993/.part-00005-7f1cdbf0-4ad2-42ce-b941-0ab2775278dc.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..acc843c31c4e7 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1993/.part-00005-7f1cdbf0-4ad2-42ce-b941-0ab2775278dc.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1993/part-00005-7f1cdbf0-4ad2-42ce-b941-0ab2775278dc.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1993/part-00005-7f1cdbf0-4ad2-42ce-b941-0ab2775278dc.c000.snappy.parquet new file mode 100644 index 0000000000000..11b17bc83b84d Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1993/part-00005-7f1cdbf0-4ad2-42ce-b941-0ab2775278dc.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1994/.part-00005-397fde20-dffd-4ab1-8a1c-cb6dd73e50ee.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1994/.part-00005-397fde20-dffd-4ab1-8a1c-cb6dd73e50ee.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..e553045da190e Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1994/.part-00005-397fde20-dffd-4ab1-8a1c-cb6dd73e50ee.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1994/part-00005-397fde20-dffd-4ab1-8a1c-cb6dd73e50ee.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1994/part-00005-397fde20-dffd-4ab1-8a1c-cb6dd73e50ee.c000.snappy.parquet new file mode 100644 index 0000000000000..f3492b7b0a5da Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1994/part-00005-397fde20-dffd-4ab1-8a1c-cb6dd73e50ee.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1999/.part-00003-5e5271ca-618c-4572-af97-5954b4ce162a.c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1999/.part-00003-5e5271ca-618c-4572-af97-5954b4ce162a.c000.snappy.parquet.crc new file mode 100644 index 0000000000000..1b60e5d54ea67 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1999/.part-00003-5e5271ca-618c-4572-af97-5954b4ce162a.c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1999/part-00003-5e5271ca-618c-4572-af97-5954b4ce162a.c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1999/part-00003-5e5271ca-618c-4572-af97-5954b4ce162a.c000.snappy.parquet new file mode 100644 index 0000000000000..18a51061f5557 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/BIRTH_YEAR=1999/part-00003-5e5271ca-618c-4572-af97-5954b4ce162a.c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/_delta_log/.00000000000000000000.json.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/_delta_log/.00000000000000000000.json.crc new file mode 100644 index 0000000000000..d47eeda440c47 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/_delta_log/.00000000000000000000.json.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/_delta_log/.00000000000000000001.json.crc b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/_delta_log/.00000000000000000001.json.crc new file mode 100644 index 0000000000000..ab4916eadfdb0 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/_delta_log/.00000000000000000001.json.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/_delta_log/00000000000000000000.json new file mode 100644 index 0000000000000..1bd3014a671b9 --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/_delta_log/00000000000000000000.json @@ -0,0 +1,16 @@ +{"commitInfo":{"timestamp":1713949463766,"operation":"WRITE","operationParameters":{"mode":"Overwrite","partitionBy":"[\"BIRTH_YEAR\"]"},"isolationLevel":"Serializable","isBlindAppend":false,"operationMetrics":{"numFiles":"13","numOutputRows":"14","numOutputBytes":"5881"},"engineInfo":"Apache-Spark/3.5.1 Delta-Lake/3.1.0","txnId":"0c3b75aa-7ef8-42b6-9b38-af4ca37701f3"}} +{"metaData":{"id":"6d9a62aa-42d1-42ba-8b4c-85cca52dda5c","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"id\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"BIRTH_YEAR\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":["BIRTH_YEAR"],"configuration":{},"createdTime":1713949462147}} +{"protocol":{"minReaderVersion":1,"minWriterVersion":2}} +{"add":{"path":"BIRTH_YEAR=1991/part-00000-c6ca97f6-1ef6-432f-a4ec-a4675be3c7af.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1991"},"size":457,"modificationTime":1713949463449,"dataChange":true,"stats":"{\"numRecords\":2,\"minValues\":{\"id\":5},\"maxValues\":{\"id\":14},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"BIRTH_YEAR=1989/part-00001-2dba4ccf-bbcd-4088-a34a-a0ed6ed00f00.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1989"},"size":452,"modificationTime":1713949463449,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":12},\"maxValues\":{\"id\":12},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"BIRTH_YEAR=1991/part-00001-782da9d6-35c0-400c-a79e-acc620f10122.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1991"},"size":452,"modificationTime":1713949463504,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":7},\"maxValues\":{\"id\":7},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"BIRTH_YEAR=1981/part-00002-541f0ff8-f399-4095-b63d-289e15c401ea.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1981"},"size":452,"modificationTime":1713949463449,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":8},\"maxValues\":{\"id\":8},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"BIRTH_YEAR=1989/part-00002-8354f522-7f84-4b2f-9bc0-ae7baea3f719.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1989"},"size":452,"modificationTime":1713949463499,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":1},\"maxValues\":{\"id\":1},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"BIRTH_YEAR=1985/part-00003-d9b49db4-8ee1-443c-b30c-556080517199.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1985"},"size":452,"modificationTime":1713949463449,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":11},\"maxValues\":{\"id\":11},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"BIRTH_YEAR=1999/part-00003-5e5271ca-618c-4572-af97-5954b4ce162a.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1999"},"size":452,"modificationTime":1713949463506,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":4},\"maxValues\":{\"id\":4},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"BIRTH_YEAR=1985/part-00004-ebbbe213-7720-4d7c-91a4-8c7444573266.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1985"},"size":452,"modificationTime":1713949463449,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":3},\"maxValues\":{\"id\":3},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"BIRTH_YEAR=1991/part-00004-05892139-fe13-4344-b069-ac213044a04c.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1991"},"size":452,"modificationTime":1713949463507,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":6},\"maxValues\":{\"id\":6},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"BIRTH_YEAR=1993/part-00005-7f1cdbf0-4ad2-42ce-b941-0ab2775278dc.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1993"},"size":452,"modificationTime":1713949463449,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":10},\"maxValues\":{\"id\":10},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"BIRTH_YEAR=1994/part-00005-397fde20-dffd-4ab1-8a1c-cb6dd73e50ee.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1994"},"size":452,"modificationTime":1713949463510,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":9},\"maxValues\":{\"id\":9},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"BIRTH_YEAR=1985/part-00006-3a9a8636-965a-43eb-9cbd-9f0afde18ed2.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1985"},"size":452,"modificationTime":1713949463449,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":13},\"maxValues\":{\"id\":13},\"nullCount\":{\"id\":0}}"}} +{"add":{"path":"BIRTH_YEAR=1986/part-00006-51231cb8-4cd3-4b1c-997c-de6fcf940f22.c000.snappy.parquet","partitionValues":{"BIRTH_YEAR":"1986"},"size":452,"modificationTime":1713949463503,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":2},\"maxValues\":{\"id\":2},\"nullCount\":{\"id\":0}}"}} diff --git a/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/_delta_log/00000000000000000001.json b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/_delta_log/00000000000000000001.json new file mode 100644 index 0000000000000..3e1ab7d81268f --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/test-partitions-uppercase/_delta_log/00000000000000000001.json @@ -0,0 +1,3 @@ +{"commitInfo":{"timestamp":1713949467017,"operation":"SET TBLPROPERTIES","operationParameters":{"properties":"{\"delta.minReaderVersion\":\"3\",\"delta.minWriterVersion\":\"7\"}"},"readVersion":0,"isolationLevel":"Serializable","isBlindAppend":true,"operationMetrics":{},"engineInfo":"Apache-Spark/3.5.1 Delta-Lake/3.1.0","txnId":"6f5561e0-4ed5-4ba3-ae9c-b9d6955b4cb9"}} +{"metaData":{"id":"6d9a62aa-42d1-42ba-8b4c-85cca52dda5c","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"id\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"BIRTH_YEAR\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":["BIRTH_YEAR"],"configuration":{},"createdTime":1713949462147}} +{"protocol":{"minReaderVersion":3,"minWriterVersion":7,"readerFeatures":[],"writerFeatures":["appendOnly","invariants"]}} diff --git a/presto-delta/src/test/resources/delta_v3/test-uppercase/.part-00000-62cff6a6-759f-4a56-9175-bb0e2d15dba5-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-uppercase/.part-00000-62cff6a6-759f-4a56-9175-bb0e2d15dba5-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..98b264362c990 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-uppercase/.part-00000-62cff6a6-759f-4a56-9175-bb0e2d15dba5-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-uppercase/.part-00002-17cf010c-a78b-4e61-a192-b240bc89f4fe-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-uppercase/.part-00002-17cf010c-a78b-4e61-a192-b240bc89f4fe-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..5ad74cfeccb56 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-uppercase/.part-00002-17cf010c-a78b-4e61-a192-b240bc89f4fe-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-uppercase/.part-00005-0913f889-3d12-448d-84f0-28ae28a01df3-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-uppercase/.part-00005-0913f889-3d12-448d-84f0-28ae28a01df3-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..0623ad82532a2 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-uppercase/.part-00005-0913f889-3d12-448d-84f0-28ae28a01df3-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-uppercase/.part-00007-ceb107e1-d878-4ecf-95f1-ae1767bcbd5d-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/test-uppercase/.part-00007-ceb107e1-d878-4ecf-95f1-ae1767bcbd5d-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..2a3083dd6e707 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-uppercase/.part-00007-ceb107e1-d878-4ecf-95f1-ae1767bcbd5d-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-uppercase/_delta_log/.00000000000000000000.json.crc b/presto-delta/src/test/resources/delta_v3/test-uppercase/_delta_log/.00000000000000000000.json.crc new file mode 100644 index 0000000000000..3e9c76a865418 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-uppercase/_delta_log/.00000000000000000000.json.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/test-uppercase/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v3/test-uppercase/_delta_log/00000000000000000000.json new file mode 100644 index 0000000000000..827fa6312b871 --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/test-uppercase/_delta_log/00000000000000000000.json @@ -0,0 +1,6 @@ +{"commitInfo":{"timestamp":1720604374270,"operation":"WRITE","operationParameters":{"mode":"Overwrite","partitionBy":"[]"},"isolationLevel":"Serializable","isBlindAppend":false,"operationMetrics":{"numFiles":"4","numOutputRows":"3","numOutputBytes":"3576"},"engineInfo":"Apache-Spark/3.5.1 Delta-Lake/3.2.0","txnId":"d7758e87-ffa0-44ee-b351-1551847950d4"}} +{"metaData":{"id":"4a5f402c-4235-4ae3-b07b-43975b715e7c","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"id\",\"type\":\"long\",\"nullable\":true,\"metadata\":{}},{\"name\":\"UCOLUMNNAME\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}},{\"name\":\"lcolumnname\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":[],"configuration":{},"createdTime":1720604364365}} +{"protocol":{"minReaderVersion":1,"minWriterVersion":2}} +{"add":{"path":"part-00002-17cf010c-a78b-4e61-a192-b240bc89f4fe-c000.snappy.parquet","partitionValues":{},"size":1029,"modificationTime":1720604372446,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":1,\"UCOLUMNNAME\":\"column1\",\"lcolumnname\":\"column1\"},\"maxValues\":{\"id\":1,\"UCOLUMNNAME\":\"column1\",\"lcolumnname\":\"column1\"},\"nullCount\":{\"id\":0,\"UCOLUMNNAME\":0,\"lcolumnname\":0}}"}} +{"add":{"path":"part-00005-0913f889-3d12-448d-84f0-28ae28a01df3-c000.snappy.parquet","partitionValues":{},"size":1029,"modificationTime":1720604372446,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":2,\"UCOLUMNNAME\":\"column2\",\"lcolumnname\":\"column2\"},\"maxValues\":{\"id\":2,\"UCOLUMNNAME\":\"column2\",\"lcolumnname\":\"column2\"},\"nullCount\":{\"id\":0,\"UCOLUMNNAME\":0,\"lcolumnname\":0}}"}} +{"add":{"path":"part-00007-ceb107e1-d878-4ecf-95f1-ae1767bcbd5d-c000.snappy.parquet","partitionValues":{},"size":1029,"modificationTime":1720604372446,"dataChange":true,"stats":"{\"numRecords\":1,\"minValues\":{\"id\":3,\"UCOLUMNNAME\":\"column3\",\"lcolumnname\":\"column3\"},\"maxValues\":{\"id\":3,\"UCOLUMNNAME\":\"column3\",\"lcolumnname\":\"column3\"},\"nullCount\":{\"id\":0,\"UCOLUMNNAME\":0,\"lcolumnname\":0}}"}} diff --git a/presto-delta/src/test/resources/delta_v3/test-uppercase/part-00000-62cff6a6-759f-4a56-9175-bb0e2d15dba5-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-uppercase/part-00000-62cff6a6-759f-4a56-9175-bb0e2d15dba5-c000.snappy.parquet new file mode 100644 index 0000000000000..064016e5fbb34 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-uppercase/part-00000-62cff6a6-759f-4a56-9175-bb0e2d15dba5-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-uppercase/part-00002-17cf010c-a78b-4e61-a192-b240bc89f4fe-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-uppercase/part-00002-17cf010c-a78b-4e61-a192-b240bc89f4fe-c000.snappy.parquet new file mode 100644 index 0000000000000..f4c80eac8ae99 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-uppercase/part-00002-17cf010c-a78b-4e61-a192-b240bc89f4fe-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-uppercase/part-00005-0913f889-3d12-448d-84f0-28ae28a01df3-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-uppercase/part-00005-0913f889-3d12-448d-84f0-28ae28a01df3-c000.snappy.parquet new file mode 100644 index 0000000000000..ff19cd7674581 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-uppercase/part-00005-0913f889-3d12-448d-84f0-28ae28a01df3-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/test-uppercase/part-00007-ceb107e1-d878-4ecf-95f1-ae1767bcbd5d-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/test-uppercase/part-00007-ceb107e1-d878-4ecf-95f1-ae1767bcbd5d-c000.snappy.parquet new file mode 100644 index 0000000000000..01588d43c5a5f Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/test-uppercase/part-00007-ceb107e1-d878-4ecf-95f1-ae1767bcbd5d-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/.part-00000-967c6c2d-d830-49f6-b8fe-aeb018f3e719-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/.part-00000-967c6c2d-d830-49f6-b8fe-aeb018f3e719-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..e35e240e86d79 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/.part-00000-967c6c2d-d830-49f6-b8fe-aeb018f3e719-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/.part-00001-09b4f0d0-4932-4d00-9a26-7f5711abefb7-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/.part-00001-09b4f0d0-4932-4d00-9a26-7f5711abefb7-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..1e8e63da90215 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/.part-00001-09b4f0d0-4932-4d00-9a26-7f5711abefb7-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/.part-00002-3222be15-ab04-414e-a847-6b80c66de177-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/.part-00002-3222be15-ab04-414e-a847-6b80c66de177-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..56743e1a01aef Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/.part-00002-3222be15-ab04-414e-a847-6b80c66de177-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/.part-00003-a5d95875-eb52-433c-96fd-28fc3b6c38eb-c000.snappy.parquet.crc b/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/.part-00003-a5d95875-eb52-433c-96fd-28fc3b6c38eb-c000.snappy.parquet.crc new file mode 100644 index 0000000000000..624fa2cb54b1b Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/.part-00003-a5d95875-eb52-433c-96fd-28fc3b6c38eb-c000.snappy.parquet.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/_delta_log/.00000000000000000000.json.crc b/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/_delta_log/.00000000000000000000.json.crc new file mode 100644 index 0000000000000..a09adaba9b8c8 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/_delta_log/.00000000000000000000.json.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/_delta_log/.00000000000000000001.json.crc b/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/_delta_log/.00000000000000000001.json.crc new file mode 100644 index 0000000000000..f609517fb12ea Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/_delta_log/.00000000000000000001.json.crc differ diff --git a/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/_delta_log/00000000000000000000.json b/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/_delta_log/00000000000000000000.json new file mode 100644 index 0000000000000..68fd98fb21cbc --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/_delta_log/00000000000000000000.json @@ -0,0 +1,7 @@ +{"commitInfo":{"timestamp":1713872152802,"operation":"WRITE","operationParameters":{"mode":"Overwrite","partitionBy":"[]"},"isolationLevel":"Serializable","isBlindAppend":false,"operationMetrics":{"numFiles":"4","numOutputRows":"10","numOutputBytes":"3105"},"engineInfo":"Apache-Spark/3.5.1 Delta-Lake/3.1.0","txnId":"46598d4e-04cb-4930-be41-0a95de8385f7"}} +{"metaData":{"id":"23309ce5-b62d-4bc5-9da0-4097af290ec2","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"id\",\"type\":\"long\",\"nullable\":true,\"metadata\":{}},{\"name\":\"part2\",\"type\":\"long\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":[],"configuration":{},"createdTime":1713872151172}} +{"protocol":{"minReaderVersion":1,"minWriterVersion":2}} +{"add":{"path":"part-00000-967c6c2d-d830-49f6-b8fe-aeb018f3e719-c000.snappy.parquet","partitionValues":{},"size":779,"modificationTime":1713872152451,"dataChange":true,"stats":"{\"numRecords\":3,\"minValues\":{\"id\":10,\"part2\":0},\"maxValues\":{\"id\":14,\"part2\":0},\"nullCount\":{\"id\":0,\"part2\":0}}"}} +{"add":{"path":"part-00001-09b4f0d0-4932-4d00-9a26-7f5711abefb7-c000.snappy.parquet","partitionValues":{},"size":778,"modificationTime":1713872152451,"dataChange":true,"stats":"{\"numRecords\":3,\"minValues\":{\"id\":15,\"part2\":1},\"maxValues\":{\"id\":19,\"part2\":1},\"nullCount\":{\"id\":0,\"part2\":0}}"}} +{"add":{"path":"part-00002-3222be15-ab04-414e-a847-6b80c66de177-c000.snappy.parquet","partitionValues":{},"size":774,"modificationTime":1713872152451,"dataChange":true,"stats":"{\"numRecords\":2,\"minValues\":{\"id\":16,\"part2\":0},\"maxValues\":{\"id\":18,\"part2\":0},\"nullCount\":{\"id\":0,\"part2\":0}}"}} +{"add":{"path":"part-00003-a5d95875-eb52-433c-96fd-28fc3b6c38eb-c000.snappy.parquet","partitionValues":{},"size":774,"modificationTime":1713872152451,"dataChange":true,"stats":"{\"numRecords\":2,\"minValues\":{\"id\":11,\"part2\":1},\"maxValues\":{\"id\":13,\"part2\":1},\"nullCount\":{\"id\":0,\"part2\":0}}"}} diff --git a/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/_delta_log/00000000000000000001.json b/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/_delta_log/00000000000000000001.json new file mode 100644 index 0000000000000..1f6ae3247d579 --- /dev/null +++ b/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/_delta_log/00000000000000000001.json @@ -0,0 +1,3 @@ +{"commitInfo":{"timestamp":1713872156559,"operation":"SET TBLPROPERTIES","operationParameters":{"properties":"{\"delta.minReaderVersion\":\"3\",\"delta.minWriterVersion\":\"7\"}"},"readVersion":0,"isolationLevel":"Serializable","isBlindAppend":true,"operationMetrics":{},"engineInfo":"Apache-Spark/3.5.1 Delta-Lake/3.1.0","txnId":"24806327-6cbd-4a12-b519-dd6e9f353a40"}} +{"metaData":{"id":"23309ce5-b62d-4bc5-9da0-4097af290ec2","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"id\",\"type\":\"long\",\"nullable\":true,\"metadata\":{}},{\"name\":\"part2\",\"type\":\"long\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":[],"configuration":{},"createdTime":1713872151172}} +{"protocol":{"minReaderVersion":3,"minWriterVersion":7,"readerFeatures":[],"writerFeatures":["appendOnly","invariants"]}} diff --git a/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/part-00000-967c6c2d-d830-49f6-b8fe-aeb018f3e719-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/part-00000-967c6c2d-d830-49f6-b8fe-aeb018f3e719-c000.snappy.parquet new file mode 100644 index 0000000000000..1f456d447b866 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/part-00000-967c6c2d-d830-49f6-b8fe-aeb018f3e719-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/part-00001-09b4f0d0-4932-4d00-9a26-7f5711abefb7-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/part-00001-09b4f0d0-4932-4d00-9a26-7f5711abefb7-c000.snappy.parquet new file mode 100644 index 0000000000000..74b70a09e3ad6 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/part-00001-09b4f0d0-4932-4d00-9a26-7f5711abefb7-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/part-00002-3222be15-ab04-414e-a847-6b80c66de177-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/part-00002-3222be15-ab04-414e-a847-6b80c66de177-c000.snappy.parquet new file mode 100644 index 0000000000000..9a6b359e3cf09 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/part-00002-3222be15-ab04-414e-a847-6b80c66de177-c000.snappy.parquet differ diff --git a/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/part-00003-a5d95875-eb52-433c-96fd-28fc3b6c38eb-c000.snappy.parquet b/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/part-00003-a5d95875-eb52-433c-96fd-28fc3b6c38eb-c000.snappy.parquet new file mode 100644 index 0000000000000..b465a11138019 Binary files /dev/null and b/presto-delta/src/test/resources/delta_v3/time-travel-partition-changes-b/part-00003-a5d95875-eb52-433c-96fd-28fc3b6c38eb-c000.snappy.parquet differ diff --git a/presto-docs/src/main/sphinx/connector/deltalake.rst b/presto-docs/src/main/sphinx/connector/deltalake.rst index 4de05aca5fd3f..0bd54025a745b 100644 --- a/presto-docs/src/main/sphinx/connector/deltalake.rst +++ b/presto-docs/src/main/sphinx/connector/deltalake.rst @@ -41,6 +41,8 @@ Property Name Description In order for this option to work, also set ``experimental.pushdown-dereference-enabled`` to ``true``. +``delta.case-sensitive-partitions-enabled`` Allows matching the names of partitioned columns in a ``true`` + case-sensitive manner. =============================================== ========================================================= ============ Delta Lake connector reuses many of the modules existing in Hive connector.