This is an automated email from the ASF dual-hosted git repository.
yihua pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hudi.git
The following commit(s) were added to refs/heads/master by this push:
new 51930298ce4 [HUDI-6359] Spark offline compaction/clustering will never
rollback when both requested and inflight states exist (#8944)
51930298ce4 is described below
commit 51930298ce48a0b413612e985f24d14a97aa703e
Author: ksmou <[email protected]>
AuthorDate: Wed Aug 16 13:37:21 2023 +0800
[HUDI-6359] Spark offline compaction/clustering will never rollback when
both requested and inflight states exist (#8944)
Co-authored-by: Y Ethan Guo <[email protected]>
---
.../src/main/java/org/apache/hudi/utilities/HoodieClusteringJob.java | 3 +--
.../src/main/java/org/apache/hudi/utilities/HoodieCompactor.java | 4 +---
2 files changed, 2 insertions(+), 5 deletions(-)
diff --git
a/hudi-utilities/src/main/java/org/apache/hudi/utilities/HoodieClusteringJob.java
b/hudi-utilities/src/main/java/org/apache/hudi/utilities/HoodieClusteringJob.java
index 9abeafb88fd..a859d791b7b 100644
---
a/hudi-utilities/src/main/java/org/apache/hudi/utilities/HoodieClusteringJob.java
+++
b/hudi-utilities/src/main/java/org/apache/hudi/utilities/HoodieClusteringJob.java
@@ -212,8 +212,7 @@ public class HoodieClusteringJob {
// Instant time is not specified
// Find the earliest scheduled clustering instant for execution
Option<HoodieInstant> firstClusteringInstant =
- metaClient.getActiveTimeline().firstInstant(
- HoodieTimeline.REPLACE_COMMIT_ACTION,
HoodieInstant.State.REQUESTED);
+
metaClient.getActiveTimeline().filterPendingReplaceTimeline().firstInstant();
if (firstClusteringInstant.isPresent()) {
cfg.clusteringInstantTime =
firstClusteringInstant.get().getTimestamp();
LOG.info("Found the earliest scheduled clustering instant which will
be executed: "
diff --git
a/hudi-utilities/src/main/java/org/apache/hudi/utilities/HoodieCompactor.java
b/hudi-utilities/src/main/java/org/apache/hudi/utilities/HoodieCompactor.java
index e7213f93a55..0b0d6307067 100644
---
a/hudi-utilities/src/main/java/org/apache/hudi/utilities/HoodieCompactor.java
+++
b/hudi-utilities/src/main/java/org/apache/hudi/utilities/HoodieCompactor.java
@@ -26,7 +26,6 @@ import org.apache.hudi.common.model.HoodieRecordPayload;
import org.apache.hudi.common.table.HoodieTableMetaClient;
import org.apache.hudi.common.table.TableSchemaResolver;
import org.apache.hudi.common.table.timeline.HoodieInstant;
-import org.apache.hudi.common.table.timeline.HoodieTimeline;
import org.apache.hudi.common.util.Option;
import org.apache.hudi.common.util.StringUtils;
import org.apache.hudi.config.HoodieCleanConfig;
@@ -263,8 +262,7 @@ public class HoodieCompactor {
if (StringUtils.isNullOrEmpty(cfg.compactionInstantTime)) {
HoodieTableMetaClient metaClient = UtilHelpers.createMetaClient(jsc,
cfg.basePath, true);
Option<HoodieInstant> firstCompactionInstant =
- metaClient.getActiveTimeline().firstInstant(
- HoodieTimeline.COMPACTION_ACTION,
HoodieInstant.State.REQUESTED);
+
metaClient.getActiveTimeline().filterPendingCompactionTimeline().firstInstant();
if (firstCompactionInstant.isPresent()) {
cfg.compactionInstantTime =
firstCompactionInstant.get().getTimestamp();
LOG.info("Found the earliest scheduled compaction instant which will
be executed: "