Package org.apache.iceberg.actions
Class RewriteDataFilesCommitManager
- java.lang.Object
-
- org.apache.iceberg.actions.RewriteDataFilesCommitManager
-
public class RewriteDataFilesCommitManager extends java.lang.Object
Functionality used by RewriteDataFile Actions from different platforms to handle commits.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description class
RewriteDataFilesCommitManager.CommitService
-
Constructor Summary
Constructors Constructor Description RewriteDataFilesCommitManager(Table table)
RewriteDataFilesCommitManager(Table table, long startingSnapshotId)
RewriteDataFilesCommitManager(Table table, long startingSnapshotId, boolean useStartingSequenceNumber)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
abortFileGroup(RewriteFileGroup fileGroup)
Clean up a specified file set by removing any files created for that operation, should not throw any exceptionsvoid
commitFileGroups(java.util.Set<RewriteFileGroup> fileGroups)
Perform a commit operation on the table adding and removing files as required for this set of file groupsvoid
commitOrClean(java.util.Set<RewriteFileGroup> rewriteGroups)
RewriteDataFilesCommitManager.CommitService
service(int rewritesPerCommit)
An async service which allows for committing multiple file groups as their rewrites complete.
-
-
-
Constructor Detail
-
RewriteDataFilesCommitManager
public RewriteDataFilesCommitManager(Table table)
-
RewriteDataFilesCommitManager
public RewriteDataFilesCommitManager(Table table, long startingSnapshotId)
-
RewriteDataFilesCommitManager
public RewriteDataFilesCommitManager(Table table, long startingSnapshotId, boolean useStartingSequenceNumber)
-
-
Method Detail
-
commitFileGroups
public void commitFileGroups(java.util.Set<RewriteFileGroup> fileGroups)
Perform a commit operation on the table adding and removing files as required for this set of file groups- Parameters:
fileGroups
- fileSets to commit
-
abortFileGroup
public void abortFileGroup(RewriteFileGroup fileGroup)
Clean up a specified file set by removing any files created for that operation, should not throw any exceptions- Parameters:
fileGroup
- group of files which has already been rewritten
-
commitOrClean
public void commitOrClean(java.util.Set<RewriteFileGroup> rewriteGroups)
-
service
public RewriteDataFilesCommitManager.CommitService service(int rewritesPerCommit)
An async service which allows for committing multiple file groups as their rewrites complete. The service also allows for partial-progress since commits can fail. Once the service has been closed no new file groups should not be offered.- Parameters:
rewritesPerCommit
- number of file groups to include in a commit- Returns:
- the service for handling commits
-
-