public abstract class BaseJavaCommitActionExecutor<T> extends BaseCommitActionExecutor<T,List<org.apache.hudi.common.model.HoodieRecord<T>>,List<org.apache.hudi.common.model.HoodieKey>,List<WriteStatus>,HoodieWriteMetadata>
extraMetadata, lastCompletedTxn, operationType, pendingInflightAndRequestedInstants, taskContextSupplier, txnManagerconfig, context, hadoopConf, instantTime, table| Constructor and Description |
|---|
BaseJavaCommitActionExecutor(org.apache.hudi.common.engine.HoodieEngineContext context,
HoodieWriteConfig config,
HoodieTable table,
String instantTime,
org.apache.hudi.common.model.WriteOperationType operationType) |
BaseJavaCommitActionExecutor(org.apache.hudi.common.engine.HoodieEngineContext context,
HoodieWriteConfig config,
HoodieTable table,
String instantTime,
org.apache.hudi.common.model.WriteOperationType operationType,
org.apache.hudi.common.util.Option extraMetadata) |
| Modifier and Type | Method and Description |
|---|---|
protected org.apache.hudi.common.util.collection.Pair<HashMap<String,WorkloadStat>,WorkloadStat> |
buildProfile(List<org.apache.hudi.common.model.HoodieRecord<T>> inputRecords) |
protected void |
commit(org.apache.hudi.common.util.Option<Map<String,String>> extraMetadata,
HoodieWriteMetadata<List<WriteStatus>> result) |
protected void |
commit(org.apache.hudi.common.util.Option<Map<String,String>> extraMetadata,
HoodieWriteMetadata<List<WriteStatus>> result,
List<org.apache.hudi.common.model.HoodieWriteStat> writeStats) |
HoodieWriteMetadata<List<WriteStatus>> |
execute(List<org.apache.hudi.common.model.HoodieRecord<T>> inputRecords) |
protected String |
getCommitActionType() |
Partitioner |
getInsertPartitioner(WorkloadProfile profile)
Provides a partitioner to perform the insert operation, based on the workload profile.
|
protected Map<String,List<String>> |
getPartitionToReplacedFileIds(HoodieWriteMetadata<List<WriteStatus>> writeMetadata) |
protected HoodieMergeHandle |
getUpdateHandle(String partitionPath,
String fileId,
Iterator<org.apache.hudi.common.model.HoodieRecord<T>> recordItr) |
Partitioner |
getUpsertPartitioner(WorkloadProfile profile)
Provides a partitioner to perform the upsert operation, based on the workload profile.
|
Iterator<List<WriteStatus>> |
handleInsert(String idPfx,
Iterator<org.apache.hudi.common.model.HoodieRecord<T>> recordItr) |
protected Iterator<List<WriteStatus>> |
handleInsertPartition(String instantTime,
Integer partition,
Iterator recordItr,
Partitioner partitioner) |
Iterator<List<WriteStatus>> |
handleUpdate(String partitionPath,
String fileId,
Iterator<org.apache.hudi.common.model.HoodieRecord<T>> recordItr) |
protected Iterator<List<WriteStatus>> |
handleUpdateInternal(HoodieMergeHandle<?,?,?,?> upsertHandle,
String fileId) |
protected Iterator<List<WriteStatus>> |
handleUpsertPartition(String instantTime,
Integer partition,
Iterator recordItr,
Partitioner partitioner) |
protected boolean |
isWorkloadProfileNeeded() |
protected void |
setCommitMetadata(HoodieWriteMetadata<List<WriteStatus>> result) |
protected List<WriteStatus> |
updateIndex(List<WriteStatus> writeStatuses,
HoodieWriteMetadata<List<WriteStatus>> result) |
void |
updateIndexAndCommitIfNeeded(List<WriteStatus> writeStatuses,
HoodieWriteMetadata result) |
autoCommit, commitOnAutoCommit, executeClustering, finalizeWrite, getSchemaToStoreInCommit, runPrecommitValidatorsexecute, writeTableMetadata, writeTableMetadata, writeTableMetadata, writeTableMetadatapublic BaseJavaCommitActionExecutor(org.apache.hudi.common.engine.HoodieEngineContext context,
HoodieWriteConfig config,
HoodieTable table,
String instantTime,
org.apache.hudi.common.model.WriteOperationType operationType)
public BaseJavaCommitActionExecutor(org.apache.hudi.common.engine.HoodieEngineContext context,
HoodieWriteConfig config,
HoodieTable table,
String instantTime,
org.apache.hudi.common.model.WriteOperationType operationType,
org.apache.hudi.common.util.Option extraMetadata)
public HoodieWriteMetadata<List<WriteStatus>> execute(List<org.apache.hudi.common.model.HoodieRecord<T>> inputRecords)
execute in class BaseCommitActionExecutor<T,List<org.apache.hudi.common.model.HoodieRecord<T>>,List<org.apache.hudi.common.model.HoodieKey>,List<WriteStatus>,HoodieWriteMetadata>protected List<WriteStatus> updateIndex(List<WriteStatus> writeStatuses, HoodieWriteMetadata<List<WriteStatus>> result)
protected String getCommitActionType()
getCommitActionType in class BaseCommitActionExecutor<T,List<org.apache.hudi.common.model.HoodieRecord<T>>,List<org.apache.hudi.common.model.HoodieKey>,List<WriteStatus>,HoodieWriteMetadata>protected org.apache.hudi.common.util.collection.Pair<HashMap<String,WorkloadStat>,WorkloadStat> buildProfile(List<org.apache.hudi.common.model.HoodieRecord<T>> inputRecords)
protected void commit(org.apache.hudi.common.util.Option<Map<String,String>> extraMetadata, HoodieWriteMetadata<List<WriteStatus>> result)
commit in class BaseCommitActionExecutor<T,List<org.apache.hudi.common.model.HoodieRecord<T>>,List<org.apache.hudi.common.model.HoodieKey>,List<WriteStatus>,HoodieWriteMetadata>protected void setCommitMetadata(HoodieWriteMetadata<List<WriteStatus>> result)
setCommitMetadata in class BaseCommitActionExecutor<T,List<org.apache.hudi.common.model.HoodieRecord<T>>,List<org.apache.hudi.common.model.HoodieKey>,List<WriteStatus>,HoodieWriteMetadata>protected void commit(org.apache.hudi.common.util.Option<Map<String,String>> extraMetadata, HoodieWriteMetadata<List<WriteStatus>> result, List<org.apache.hudi.common.model.HoodieWriteStat> writeStats)
protected Map<String,List<String>> getPartitionToReplacedFileIds(HoodieWriteMetadata<List<WriteStatus>> writeMetadata)
protected boolean isWorkloadProfileNeeded()
isWorkloadProfileNeeded in class BaseCommitActionExecutor<T,List<org.apache.hudi.common.model.HoodieRecord<T>>,List<org.apache.hudi.common.model.HoodieKey>,List<WriteStatus>,HoodieWriteMetadata>protected Iterator<List<WriteStatus>> handleUpsertPartition(String instantTime, Integer partition, Iterator recordItr, Partitioner partitioner)
protected Iterator<List<WriteStatus>> handleInsertPartition(String instantTime, Integer partition, Iterator recordItr, Partitioner partitioner)
public Iterator<List<WriteStatus>> handleUpdate(String partitionPath, String fileId, Iterator<org.apache.hudi.common.model.HoodieRecord<T>> recordItr) throws IOException
handleUpdate in class BaseCommitActionExecutor<T,List<org.apache.hudi.common.model.HoodieRecord<T>>,List<org.apache.hudi.common.model.HoodieKey>,List<WriteStatus>,HoodieWriteMetadata>IOExceptionprotected Iterator<List<WriteStatus>> handleUpdateInternal(HoodieMergeHandle<?,?,?,?> upsertHandle, String fileId) throws IOException
IOExceptionprotected HoodieMergeHandle getUpdateHandle(String partitionPath, String fileId, Iterator<org.apache.hudi.common.model.HoodieRecord<T>> recordItr)
public Iterator<List<WriteStatus>> handleInsert(String idPfx, Iterator<org.apache.hudi.common.model.HoodieRecord<T>> recordItr)
handleInsert in class BaseCommitActionExecutor<T,List<org.apache.hudi.common.model.HoodieRecord<T>>,List<org.apache.hudi.common.model.HoodieKey>,List<WriteStatus>,HoodieWriteMetadata>public Partitioner getUpsertPartitioner(WorkloadProfile profile)
public Partitioner getInsertPartitioner(WorkloadProfile profile)
public void updateIndexAndCommitIfNeeded(List<WriteStatus> writeStatuses, HoodieWriteMetadata result)
Copyright © 2023 The Apache Software Foundation. All rights reserved.