public interface DeleteFiles extends SnapshotUpdate<DeleteFiles>
This API accumulates file deletions, produces a new
Snapshot of the table, and commits
that snapshot as the current.
When committing, these changes will be applied to the latest table snapshot. Commit conflicts will be resolved by applying the changes to the new latest snapshot and reattempting the commit.
|Modifier and Type||Method and Description|
Delete a file path from the underlying table.
Delete a file tracked by a
Delete files that match an
DeleteFiles deleteFile(java.lang.CharSequence path)
To remove a file from the table, this path must equal a path in the table's metadata. Paths that are different but equivalent will not be removed. For example, file:/path/file.avro is equivalent to file:///path/file.avro, but would not remove the latter path from the table.
path- a fully-qualified file path to remove from the table
default DeleteFiles deleteFile(DataFile file)
DataFilefrom the underlying table.
file- a DataFile to remove from the table
DeleteFiles deleteFromRowFilter(Expression expr)
Expressionon data rows from the table.
A file is selected to be deleted by the expression if it could contain any rows that match the
expression (candidate files are selected using an
inclusive projection). These candidate files are
deleted if all of the rows in the file must match the expression (the partition data matches
Projections.strict(PartitionSpec) strict projection}). This guarantees
that files are deleted if and only if all rows in the file must match the expression.
Files that may contain some rows that match the expression and some rows that do not will
result in a
expr- an expression on rows in the table
ValidationException- If a file can contain both rows that match and rows that do not