This is an automated email from the ASF dual-hosted git repository.
singhpk234 pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/iceberg.git
The following commit(s) were added to refs/heads/main by this push:
new a16baffcd3 Spark: Add named constant for `NO_ADVISORY_PARTITION_SIZE`
(#15681)
a16baffcd3 is described below
commit a16baffcd3135617a778faebd9b5a8edd1e98435
Author: jbewing <[email protected]>
AuthorDate: Fri Mar 20 07:28:05 2026 -0400
Spark: Add named constant for `NO_ADVISORY_PARTITION_SIZE` (#15681)
* Add named constant for `NO_ADVISORY_PARTITION_SIZE`
* PR feedback
---
.../org/apache/iceberg/spark/SparkWriteRequirements.java | 13 +++++++++----
.../org/apache/iceberg/spark/SparkWriteRequirements.java | 13 +++++++++----
.../org/apache/iceberg/spark/SparkWriteRequirements.java | 13 +++++++++----
3 files changed, 27 insertions(+), 12 deletions(-)
diff --git
a/spark/v3.5/spark/src/main/java/org/apache/iceberg/spark/SparkWriteRequirements.java
b/spark/v3.5/spark/src/main/java/org/apache/iceberg/spark/SparkWriteRequirements.java
index 833e0e44e3..072727ac4b 100644
---
a/spark/v3.5/spark/src/main/java/org/apache/iceberg/spark/SparkWriteRequirements.java
+++
b/spark/v3.5/spark/src/main/java/org/apache/iceberg/spark/SparkWriteRequirements.java
@@ -26,8 +26,10 @@ import org.apache.spark.sql.connector.expressions.SortOrder;
/** A set of requirements such as distribution and ordering reported to Spark
during writes. */
public class SparkWriteRequirements {
+ private static final long NO_ADVISORY_PARTITION_SIZE = 0;
public static final SparkWriteRequirements EMPTY =
- new SparkWriteRequirements(Distributions.unspecified(), new
SortOrder[0], 0);
+ new SparkWriteRequirements(
+ Distributions.unspecified(), new SortOrder[0],
NO_ADVISORY_PARTITION_SIZE);
private final Distribution distribution;
private final SortOrder[] ordering;
@@ -37,7 +39,11 @@ public class SparkWriteRequirements {
Distribution distribution, SortOrder[] ordering, long
advisoryPartitionSize) {
this.distribution = distribution;
this.ordering = ordering;
- this.advisoryPartitionSize = advisoryPartitionSize;
+ // Spark prohibits requesting a particular advisory partition size without
distribution
+ this.advisoryPartitionSize =
+ distribution instanceof UnspecifiedDistribution
+ ? NO_ADVISORY_PARTITION_SIZE
+ : advisoryPartitionSize;
}
public Distribution distribution() {
@@ -53,7 +59,6 @@ public class SparkWriteRequirements {
}
public long advisoryPartitionSize() {
- // Spark prohibits requesting a particular advisory partition size without
distribution
- return distribution instanceof UnspecifiedDistribution ? 0 :
advisoryPartitionSize;
+ return advisoryPartitionSize;
}
}
diff --git
a/spark/v4.0/spark/src/main/java/org/apache/iceberg/spark/SparkWriteRequirements.java
b/spark/v4.0/spark/src/main/java/org/apache/iceberg/spark/SparkWriteRequirements.java
index 833e0e44e3..072727ac4b 100644
---
a/spark/v4.0/spark/src/main/java/org/apache/iceberg/spark/SparkWriteRequirements.java
+++
b/spark/v4.0/spark/src/main/java/org/apache/iceberg/spark/SparkWriteRequirements.java
@@ -26,8 +26,10 @@ import org.apache.spark.sql.connector.expressions.SortOrder;
/** A set of requirements such as distribution and ordering reported to Spark
during writes. */
public class SparkWriteRequirements {
+ private static final long NO_ADVISORY_PARTITION_SIZE = 0;
public static final SparkWriteRequirements EMPTY =
- new SparkWriteRequirements(Distributions.unspecified(), new
SortOrder[0], 0);
+ new SparkWriteRequirements(
+ Distributions.unspecified(), new SortOrder[0],
NO_ADVISORY_PARTITION_SIZE);
private final Distribution distribution;
private final SortOrder[] ordering;
@@ -37,7 +39,11 @@ public class SparkWriteRequirements {
Distribution distribution, SortOrder[] ordering, long
advisoryPartitionSize) {
this.distribution = distribution;
this.ordering = ordering;
- this.advisoryPartitionSize = advisoryPartitionSize;
+ // Spark prohibits requesting a particular advisory partition size without
distribution
+ this.advisoryPartitionSize =
+ distribution instanceof UnspecifiedDistribution
+ ? NO_ADVISORY_PARTITION_SIZE
+ : advisoryPartitionSize;
}
public Distribution distribution() {
@@ -53,7 +59,6 @@ public class SparkWriteRequirements {
}
public long advisoryPartitionSize() {
- // Spark prohibits requesting a particular advisory partition size without
distribution
- return distribution instanceof UnspecifiedDistribution ? 0 :
advisoryPartitionSize;
+ return advisoryPartitionSize;
}
}
diff --git
a/spark/v4.1/spark/src/main/java/org/apache/iceberg/spark/SparkWriteRequirements.java
b/spark/v4.1/spark/src/main/java/org/apache/iceberg/spark/SparkWriteRequirements.java
index 833e0e44e3..072727ac4b 100644
---
a/spark/v4.1/spark/src/main/java/org/apache/iceberg/spark/SparkWriteRequirements.java
+++
b/spark/v4.1/spark/src/main/java/org/apache/iceberg/spark/SparkWriteRequirements.java
@@ -26,8 +26,10 @@ import org.apache.spark.sql.connector.expressions.SortOrder;
/** A set of requirements such as distribution and ordering reported to Spark
during writes. */
public class SparkWriteRequirements {
+ private static final long NO_ADVISORY_PARTITION_SIZE = 0;
public static final SparkWriteRequirements EMPTY =
- new SparkWriteRequirements(Distributions.unspecified(), new
SortOrder[0], 0);
+ new SparkWriteRequirements(
+ Distributions.unspecified(), new SortOrder[0],
NO_ADVISORY_PARTITION_SIZE);
private final Distribution distribution;
private final SortOrder[] ordering;
@@ -37,7 +39,11 @@ public class SparkWriteRequirements {
Distribution distribution, SortOrder[] ordering, long
advisoryPartitionSize) {
this.distribution = distribution;
this.ordering = ordering;
- this.advisoryPartitionSize = advisoryPartitionSize;
+ // Spark prohibits requesting a particular advisory partition size without
distribution
+ this.advisoryPartitionSize =
+ distribution instanceof UnspecifiedDistribution
+ ? NO_ADVISORY_PARTITION_SIZE
+ : advisoryPartitionSize;
}
public Distribution distribution() {
@@ -53,7 +59,6 @@ public class SparkWriteRequirements {
}
public long advisoryPartitionSize() {
- // Spark prohibits requesting a particular advisory partition size without
distribution
- return distribution instanceof UnspecifiedDistribution ? 0 :
advisoryPartitionSize;
+ return advisoryPartitionSize;
}
}