From 50bdf5b4c2559318b4ee53a4cd2d47c0c1a12acc Mon Sep 17 00:00:00 2001 From: waterWang Date: Sat, 8 Aug 2026 05:03:32 +0800 Subject: [PATCH 1/3] fix: quote partition field name in sortBy to handle dotted partition fields (#17425) --- .../iceberg/spark/actions/RewriteManifestsSparkAction.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spark/v4.1/spark/src/main/java/org/apache/iceberg/spark/actions/RewriteManifestsSparkAction.java b/spark/v4.1/spark/src/main/java/org/apache/iceberg/spark/actions/RewriteManifestsSparkAction.java index 668360c06730..666f9e9d5cb7 100644 --- a/spark/v4.1/spark/src/main/java/org/apache/iceberg/spark/actions/RewriteManifestsSparkAction.java +++ b/spark/v4.1/spark/src/main/java/org/apache/iceberg/spark/actions/RewriteManifestsSparkAction.java @@ -317,7 +317,7 @@ private Column sortColumn() { // entry dataframe Column[] partitionColumns = partitionFieldClustering.stream() - .map(p -> col(DATA_FILE_PARTITION_COLUMN_NAME + "." + p)) + .map(p -> col(DATA_FILE_PARTITION_COLUMN_NAME + ".`" + p + "`")) .toArray(Column[]::new); // Form a new temporary column to cluster manifests on, based on the custom clustering columns From 448cfd4137b2a364c575b13bcf959dba32440ddd Mon Sep 17 00:00:00 2001 From: waterWang Date: Sat, 8 Aug 2026 05:03:35 +0800 Subject: [PATCH 2/3] fix: quote partition field name in sortBy to handle dotted partition fields (#17425) --- .../iceberg/spark/actions/RewriteManifestsSparkAction.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spark/v4.0/spark/src/main/java/org/apache/iceberg/spark/actions/RewriteManifestsSparkAction.java b/spark/v4.0/spark/src/main/java/org/apache/iceberg/spark/actions/RewriteManifestsSparkAction.java index 668360c06730..666f9e9d5cb7 100644 --- a/spark/v4.0/spark/src/main/java/org/apache/iceberg/spark/actions/RewriteManifestsSparkAction.java +++ b/spark/v4.0/spark/src/main/java/org/apache/iceberg/spark/actions/RewriteManifestsSparkAction.java @@ -317,7 +317,7 @@ private Column sortColumn() { // entry dataframe Column[] partitionColumns = partitionFieldClustering.stream() - .map(p -> col(DATA_FILE_PARTITION_COLUMN_NAME + "." + p)) + .map(p -> col(DATA_FILE_PARTITION_COLUMN_NAME + ".`" + p + "`")) .toArray(Column[]::new); // Form a new temporary column to cluster manifests on, based on the custom clustering columns From 8708f9db78ebeed7bf7d7642a36c0946c156245e Mon Sep 17 00:00:00 2001 From: waterWang Date: Sat, 8 Aug 2026 05:03:37 +0800 Subject: [PATCH 3/3] fix: quote partition field name in sortBy to handle dotted partition fields (#17425) --- .../iceberg/spark/actions/RewriteManifestsSparkAction.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spark/v3.5/spark/src/main/java/org/apache/iceberg/spark/actions/RewriteManifestsSparkAction.java b/spark/v3.5/spark/src/main/java/org/apache/iceberg/spark/actions/RewriteManifestsSparkAction.java index 475088b148c6..1425c3fcf8c9 100644 --- a/spark/v3.5/spark/src/main/java/org/apache/iceberg/spark/actions/RewriteManifestsSparkAction.java +++ b/spark/v3.5/spark/src/main/java/org/apache/iceberg/spark/actions/RewriteManifestsSparkAction.java @@ -317,7 +317,7 @@ private Column sortColumn() { // entry dataframe Column[] partitionColumns = partitionFieldClustering.stream() - .map(p -> col(DATA_FILE_PARTITION_COLUMN_NAME + "." + p)) + .map(p -> col(DATA_FILE_PARTITION_COLUMN_NAME + ".`" + p + "`")) .toArray(Column[]::new); // Form a new temporary column to cluster manifests on, based on the custom clustering columns