Package org.apache.iceberg.actions
Class RewriteDataFilesCommitManager
java.lang.Object
org.apache.iceberg.actions.RewriteDataFilesCommitManager
Functionality used by RewriteDataFile Actions from different platforms to handle commits.
-
Nested Class Summary
-
Constructor Summary
ConstructorDescriptionRewriteDataFilesCommitManager
(Table table, long startingSnapshotId) RewriteDataFilesCommitManager
(Table table, long startingSnapshotId, boolean useStartingSequenceNumber) RewriteDataFilesCommitManager
(Table table, long startingSnapshotId, boolean useStartingSequenceNumber, Map<String, String> snapshotProperties) -
Method Summary
Modifier and TypeMethodDescriptionvoid
abortFileGroup
(RewriteFileGroup fileGroup) Clean up a specified file set by removing any files created for that operation, should not throw any exceptionsvoid
commitFileGroups
(Set<RewriteFileGroup> fileGroups) Perform a commit operation on the table adding and removing files as required for this set of file groupsvoid
commitOrClean
(Set<RewriteFileGroup> rewriteGroups) service
(int rewritesPerCommit) An async service which allows for committing multiple file groups as their rewrites complete.
-
Constructor Details
-
RewriteDataFilesCommitManager
-
RewriteDataFilesCommitManager
-
RewriteDataFilesCommitManager
public RewriteDataFilesCommitManager(Table table, long startingSnapshotId, boolean useStartingSequenceNumber) -
RewriteDataFilesCommitManager
-
-
Method Details
-
commitFileGroups
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
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
-
service
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
-