diff --git a/hudi-client/hudi-client-common/src/main/java/org/apache/hudi/client/BaseHoodieWriteClient.java b/hudi-client/hudi-client-common/src/main/java/org/apache/hudi/client/BaseHoodieWriteClient.java index 17956479762e3..7f9f8504ea463 100644 --- a/hudi-client/hudi-client-common/src/main/java/org/apache/hudi/client/BaseHoodieWriteClient.java +++ b/hudi-client/hudi-client-common/src/main/java/org/apache/hudi/client/BaseHoodieWriteClient.java @@ -811,6 +811,15 @@ public String startCommit(String actionType, HoodieTableMetaClient metaClient) { return instantTime; } + + /** + * Provides a new commit time for a write operation (insert/update/delete/insert_overwrite/insert_overwrite_table) with specified action. + */ + public String startCommit(String actionType) { + HoodieTableMetaClient metaClient = createMetaClient(true); + return startCommit(actionType, metaClient); + } + /** * Provides a new commit time for a write operation (insert/update/delete/insert_overwrite/insert_overwrite_table) without specified action. * @param instantTime Instant time to be generated diff --git a/hudi-utilities/src/main/java/org/apache/hudi/utilities/deltastreamer/DeltaSync.java b/hudi-utilities/src/main/java/org/apache/hudi/utilities/deltastreamer/DeltaSync.java index 8c010e9484dc6..2a8ea1a17b507 100644 --- a/hudi-utilities/src/main/java/org/apache/hudi/utilities/deltastreamer/DeltaSync.java +++ b/hudi-utilities/src/main/java/org/apache/hudi/utilities/deltastreamer/DeltaSync.java @@ -55,7 +55,6 @@ import org.apache.hudi.common.table.HoodieTableMetaClient; import org.apache.hudi.common.table.TableSchemaResolver; import org.apache.hudi.common.table.log.block.HoodieLogBlock.HoodieLogBlockType; -import org.apache.hudi.common.table.timeline.HoodieActiveTimeline; import org.apache.hudi.common.table.timeline.HoodieInstant; import org.apache.hudi.common.table.timeline.HoodieTimeline; import org.apache.hudi.common.util.CommitUtils; @@ -759,10 +758,8 @@ private String startCommit() { RuntimeException lastException = null; while (retryNum <= maxRetries) { try { - String instantTime = HoodieActiveTimeline.createNewInstantTime(); String commitActionType = CommitUtils.getCommitActionType(cfg.operation, HoodieTableType.valueOf(cfg.tableType)); - writeClient.startCommitWithTime(instantTime, commitActionType); - return instantTime; + return writeClient.startCommit(commitActionType); } catch (IllegalArgumentException ie) { lastException = ie; LOG.error("Got error trying to start a new commit. Retrying after sleeping for a sec", ie);