You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@paimon.apache.org by lz...@apache.org on 2024/01/23 05:22:46 UTC
(incubator-paimon) branch master updated: [Bug] fix sort compaction failed on empty input (#2766)
This is an automated email from the ASF dual-hosted git repository.
lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-paimon.git
The following commit(s) were added to refs/heads/master by this push:
new 898c0ea69 [Bug] fix sort compaction failed on empty input (#2766)
898c0ea69 is described below
commit 898c0ea69686b1cffaee7ee799e1f9d3bb0e043d
Author: Aitozi <10...@qq.com>
AuthorDate: Tue Jan 23 13:22:42 2024 +0800
[Bug] fix sort compaction failed on empty input (#2766)
---
.../org/apache/paimon/flink/shuffle/RangeShuffle.java | 6 ++++--
.../action/SortCompactActionForUnawareBucketITCase.java | 16 ++++++++++++++++
2 files changed, 20 insertions(+), 2 deletions(-)
diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/shuffle/RangeShuffle.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/shuffle/RangeShuffle.java
index 4fb5f9217..b51c11461 100644
--- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/shuffle/RangeShuffle.java
+++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/shuffle/RangeShuffle.java
@@ -54,6 +54,7 @@ import org.apache.flink.util.XORShiftRandom;
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Collections;
import java.util.Comparator;
import java.util.Iterator;
import java.util.List;
@@ -257,9 +258,10 @@ public class RangeShuffle {
T record = sampledData.get((int) (i * avgRange));
boundaries[i - 1] = record;
}
+ collector.collect(Arrays.asList(boundaries));
+ } else {
+ collector.collect(Collections.emptyList());
}
-
- collector.collect(Arrays.asList(boundaries));
}
}
diff --git a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/action/SortCompactActionForUnawareBucketITCase.java b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/action/SortCompactActionForUnawareBucketITCase.java
index 752977b0f..dc9c56879 100644
--- a/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/action/SortCompactActionForUnawareBucketITCase.java
+++ b/paimon-flink/paimon-flink-common/src/test/java/org/apache/paimon/flink/action/SortCompactActionForUnawareBucketITCase.java
@@ -258,6 +258,22 @@ public class SortCompactActionForUnawareBucketITCase extends ActionITCaseBase {
Assertions.assertThat(files.size()).isEqualTo(3);
}
+ @Test
+ public void testSortCompactionOnEmptyData() throws Exception {
+ createTable();
+ SortCompactAction sortCompactAction =
+ new SortCompactAction(
+ warehouse,
+ database,
+ tableName,
+ Collections.emptyMap(),
+ Collections.emptyMap())
+ .withOrderStrategy("zorder")
+ .withOrderColumns(Collections.singletonList("f0"));
+
+ sortCompactAction.run();
+ }
+
private void zorder(List<String> columns) throws Exception {
if (RANDOM.nextBoolean()) {
createAction("zorder", columns).run();