[HUDI-1833] rollback pending clustering even if there is greater commit (#2863)
* [HUDI-1833] rollback pending clustering even if there are greater commits
This commit is contained in:
@@ -28,6 +28,7 @@ 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.table.timeline.TimelineMetadataUtils;
|
||||
import org.apache.hudi.common.util.ClusteringUtils;
|
||||
import org.apache.hudi.common.util.HoodieTimer;
|
||||
import org.apache.hudi.common.util.Option;
|
||||
import org.apache.hudi.common.util.ValidationUtils;
|
||||
@@ -174,8 +175,11 @@ public abstract class BaseRollbackActionExecutor<T extends HoodieRecordPayload,
|
||||
final String instantTimeToRollback = instantToRollback.getTimestamp();
|
||||
final boolean isPendingCompaction = Objects.equals(HoodieTimeline.COMPACTION_ACTION, instantToRollback.getAction())
|
||||
&& !instantToRollback.isCompleted();
|
||||
|
||||
final boolean isPendingClustering = Objects.equals(HoodieTimeline.REPLACE_COMMIT_ACTION, instantToRollback.getAction())
|
||||
&& !instantToRollback.isCompleted() && ClusteringUtils.getClusteringPlan(table.getMetaClient(), instantToRollback).isPresent();
|
||||
validateSavepointRollbacks();
|
||||
if (!isPendingCompaction) {
|
||||
if (!isPendingCompaction && !isPendingClustering) {
|
||||
validateRollbackCommitSequence();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user