Package org.apache.iceberg.actions
Interface RewritePositionDeleteStrategy
-
public interface RewritePositionDeleteStrategy
A strategy for an action to rewrite position delete files.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.lang.String
name()
Returns the name of this rewrite deletes strategyRewritePositionDeleteStrategy
options(java.util.Map<java.lang.String,java.lang.String> options)
Sets options to be used with this strategyjava.lang.Iterable<java.lang.Iterable<DeleteFile>>
planDeleteFileGroups(java.lang.Iterable<DeleteFile> deleteFiles)
Groups into lists which will be processed in a single executable unit.java.lang.Iterable<DeleteFile>
rewriteDeleteFiles(java.lang.Iterable<DeleteFile> deleteFilesToRewrite)
Define how to rewrite the deletes.java.lang.Iterable<DeleteFile>
selectDeleteFiles(java.lang.Iterable<DeleteFile> deleteFiles)
Select the delete files to rewrite.Table
table()
Returns the table being modified by this rewrite strategyjava.util.Set<java.lang.String>
validOptions()
Returns a set of options which this rewrite strategy can use.
-
-
-
Method Detail
-
name
java.lang.String name()
Returns the name of this rewrite deletes strategy
-
table
Table table()
Returns the table being modified by this rewrite strategy
-
validOptions
java.util.Set<java.lang.String> validOptions()
Returns a set of options which this rewrite strategy can use. This is an allowed-list and any options not specified here will be rejected at runtime.
-
options
RewritePositionDeleteStrategy options(java.util.Map<java.lang.String,java.lang.String> options)
Sets options to be used with this strategy
-
selectDeleteFiles
java.lang.Iterable<DeleteFile> selectDeleteFiles(java.lang.Iterable<DeleteFile> deleteFiles)
Select the delete files to rewrite.- Parameters:
deleteFiles
- iterable of delete files in a group.- Returns:
- iterable of original delete file to be replaced.
-
planDeleteFileGroups
java.lang.Iterable<java.lang.Iterable<DeleteFile>> planDeleteFileGroups(java.lang.Iterable<DeleteFile> deleteFiles)
Groups into lists which will be processed in a single executable unit. Each group will end up being committed as an independent set of changes. This creates the jobs which will eventually be run as by the underlying Action.- Parameters:
deleteFiles
- iterable of DeleteFile to be rewritten- Returns:
- iterable of lists of FileScanTasks which will be processed together
-
rewriteDeleteFiles
java.lang.Iterable<DeleteFile> rewriteDeleteFiles(java.lang.Iterable<DeleteFile> deleteFilesToRewrite)
Define how to rewrite the deletes.- Parameters:
deleteFilesToRewrite
- a group of files to be rewritten together- Returns:
- iterable of delete files used to replace the original delete files.
-
-