From 6db2eab23a3e0ee5750d88c38c1ec354173ecf6a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E4=B8=87=E4=B9=89?= Date: Fri, 21 Aug 2026 16:00:22 +0800 Subject: [PATCH] [Fix] Support KEY_DYNAMIC bucket mode in CompactorSinkBuilder This closes #9256. When using KEY_DYNAMIC bucket mode (bucket = -1 with crossPartitionUpdate), the CALL sys.compact procedure would throw: UnsupportedOperationException: Unsupported bucket mode: KEY_DYNAMIC The CompactorSinkBuilder only handled HASH_FIXED and HASH_DYNAMIC, but KEY_DYNAMIC is also a bucket-aware mode that should use the same buildForBucketAware() path. --- .../java/org/apache/paimon/flink/sink/CompactorSinkBuilder.java | 1 + 1 file changed, 1 insertion(+) diff --git a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CompactorSinkBuilder.java b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CompactorSinkBuilder.java index 778b2fd5512c..4089100ffdfe 100644 --- a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CompactorSinkBuilder.java +++ b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/sink/CompactorSinkBuilder.java @@ -66,6 +66,7 @@ public DataStreamSink build() { switch (bucketMode) { case HASH_FIXED: case HASH_DYNAMIC: + case KEY_DYNAMIC: return buildForBucketAware(); default: throw new UnsupportedOperationException("Unsupported bucket mode: " + bucketMode);