public class StoreMultiCommitter extends Object implements Committer<MultiTableCommittable,WrappedManifestCommittable>
StoreMultiCommitter
for multiple dynamic store. During the commit process, it will group
the WrappedManifestCommittables by their table identifier and use different committers to commit
to different tables.Committer.Context, Committer.Factory<CommitT,GlobalCommitT>
Constructor and Description |
---|
StoreMultiCommitter(Catalog.Loader catalogLoader,
Committer.Context context) |
StoreMultiCommitter(Catalog.Loader catalogLoader,
Committer.Context context,
boolean ignoreEmptyCommit,
Map<String,String> dynamicOptions) |
Modifier and Type | Method and Description |
---|---|
void |
close() |
WrappedManifestCommittable |
combine(long checkpointId,
long watermark,
List<MultiTableCommittable> committables)
Compute an aggregated committable from a list of committables.
|
WrappedManifestCommittable |
combine(long checkpointId,
long watermark,
WrappedManifestCommittable wrappedManifestCommittable,
List<MultiTableCommittable> committables) |
void |
commit(List<WrappedManifestCommittable> committables)
Commits the given
GlobalCommitT . |
int |
filterAndCommit(List<WrappedManifestCommittable> globalCommittables,
boolean checkAppendFiles)
Filter out all
GlobalCommitT which have committed, and commit the remaining GlobalCommitT . |
boolean |
forceCreatingSnapshot() |
Map<Long,List<MultiTableCommittable>> |
groupByCheckpoint(Collection<MultiTableCommittable> committables) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
createContext, filterAndCommit
public StoreMultiCommitter(Catalog.Loader catalogLoader, Committer.Context context)
public StoreMultiCommitter(Catalog.Loader catalogLoader, Committer.Context context, boolean ignoreEmptyCommit, Map<String,String> dynamicOptions)
public boolean forceCreatingSnapshot()
forceCreatingSnapshot
in interface Committer<MultiTableCommittable,WrappedManifestCommittable>
public WrappedManifestCommittable combine(long checkpointId, long watermark, List<MultiTableCommittable> committables)
Committer
combine
in interface Committer<MultiTableCommittable,WrappedManifestCommittable>
public WrappedManifestCommittable combine(long checkpointId, long watermark, WrappedManifestCommittable wrappedManifestCommittable, List<MultiTableCommittable> committables)
combine
in interface Committer<MultiTableCommittable,WrappedManifestCommittable>
public void commit(List<WrappedManifestCommittable> committables) throws IOException, InterruptedException
Committer
GlobalCommitT
.commit
in interface Committer<MultiTableCommittable,WrappedManifestCommittable>
IOException
InterruptedException
public int filterAndCommit(List<WrappedManifestCommittable> globalCommittables, boolean checkAppendFiles) throws IOException
Committer
GlobalCommitT
which have committed, and commit the remaining GlobalCommitT
.filterAndCommit
in interface Committer<MultiTableCommittable,WrappedManifestCommittable>
IOException
public Map<Long,List<MultiTableCommittable>> groupByCheckpoint(Collection<MultiTableCommittable> committables)
groupByCheckpoint
in interface Committer<MultiTableCommittable,WrappedManifestCommittable>
public void close() throws Exception
close
in interface AutoCloseable
Exception
Copyright © 2023–2024 The Apache Software Foundation. All rights reserved.