You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iceberg.apache.org by ao...@apache.org on 2022/08/18 23:12:07 UTC

[iceberg] branch master updated: Spark 3.3: Align formatting in bucket and truncate functions (#5573)

This is an automated email from the ASF dual-hosted git repository.

aokolnychyi pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/iceberg.git


The following commit(s) were added to refs/heads/master by this push:
     new 39df59308c Spark 3.3: Align formatting in bucket and truncate functions (#5573)
39df59308c is described below

commit 39df59308c9fdaf6d4f4c7a537caa960587fef5e
Author: Anton Okolnychyi <ao...@apple.com>
AuthorDate: Thu Aug 18 16:12:01 2022 -0700

    Spark 3.3: Align formatting in bucket and truncate functions (#5573)
---
 .../iceberg/spark/functions/BucketFunction.java    | 45 ++++++++++++++--------
 .../iceberg/spark/functions/TruncateFunction.java  |  5 ++-
 2 files changed, 32 insertions(+), 18 deletions(-)

diff --git a/spark/v3.3/spark/src/main/java/org/apache/iceberg/spark/functions/BucketFunction.java b/spark/v3.3/spark/src/main/java/org/apache/iceberg/spark/functions/BucketFunction.java
index c21d131584..b5736a866b 100644
--- a/spark/v3.3/spark/src/main/java/org/apache/iceberg/spark/functions/BucketFunction.java
+++ b/spark/v3.3/spark/src/main/java/org/apache/iceberg/spark/functions/BucketFunction.java
@@ -53,8 +53,10 @@ import org.apache.spark.unsafe.types.UTF8String;
  * results.
  */
 public class BucketFunction implements UnboundFunction {
+
   private static final int NUM_BUCKETS_ORDINAL = 0;
   private static final int VALUE_ORDINAL = 1;
+
   private static final Set<DataType> SUPPORTED_NUM_BUCKETS_TYPES =
       ImmutableSet.of(DataTypes.ByteType, DataTypes.ShortType, DataTypes.IntegerType);
 
@@ -156,9 +158,11 @@ public class BucketFunction implements UnboundFunction {
     @Override
     public Integer produceResult(InternalRow input) {
       // return null for null input to match what Spark does in the code-generated versions.
-      return input.isNullAt(NUM_BUCKETS_ORDINAL) || input.isNullAt(VALUE_ORDINAL)
-          ? null
-          : invoke(input.getInt(NUM_BUCKETS_ORDINAL), input.getInt(VALUE_ORDINAL));
+      if (input.isNullAt(NUM_BUCKETS_ORDINAL) || input.isNullAt(VALUE_ORDINAL)) {
+        return null;
+      } else {
+        return invoke(input.getInt(NUM_BUCKETS_ORDINAL), input.getInt(VALUE_ORDINAL));
+      }
     }
   }
 
@@ -192,9 +196,11 @@ public class BucketFunction implements UnboundFunction {
 
     @Override
     public Integer produceResult(InternalRow input) {
-      return input.isNullAt(NUM_BUCKETS_ORDINAL) || input.isNullAt(VALUE_ORDINAL)
-          ? null
-          : invoke(input.getInt(NUM_BUCKETS_ORDINAL), input.getLong(VALUE_ORDINAL));
+      if (input.isNullAt(NUM_BUCKETS_ORDINAL) || input.isNullAt(VALUE_ORDINAL)) {
+        return null;
+      } else {
+        return invoke(input.getInt(NUM_BUCKETS_ORDINAL), input.getLong(VALUE_ORDINAL));
+      }
     }
   }
 
@@ -226,9 +232,11 @@ public class BucketFunction implements UnboundFunction {
 
     @Override
     public Integer produceResult(InternalRow input) {
-      return input.isNullAt(NUM_BUCKETS_ORDINAL) || input.isNullAt(VALUE_ORDINAL)
-          ? null
-          : invoke(input.getInt(NUM_BUCKETS_ORDINAL), input.getUTF8String(VALUE_ORDINAL));
+      if (input.isNullAt(NUM_BUCKETS_ORDINAL) || input.isNullAt(VALUE_ORDINAL)) {
+        return null;
+      } else {
+        return invoke(input.getInt(NUM_BUCKETS_ORDINAL), input.getUTF8String(VALUE_ORDINAL));
+      }
     }
   }
 
@@ -253,9 +261,11 @@ public class BucketFunction implements UnboundFunction {
 
     @Override
     public Integer produceResult(InternalRow input) {
-      return input.isNullAt(NUM_BUCKETS_ORDINAL) || input.isNullAt(VALUE_ORDINAL)
-          ? null
-          : invoke(input.getInt(NUM_BUCKETS_ORDINAL), input.getBinary(VALUE_ORDINAL));
+      if (input.isNullAt(NUM_BUCKETS_ORDINAL) || input.isNullAt(VALUE_ORDINAL)) {
+        return null;
+      } else {
+        return invoke(input.getInt(NUM_BUCKETS_ORDINAL), input.getBinary(VALUE_ORDINAL));
+      }
     }
 
     @Override
@@ -296,10 +306,13 @@ public class BucketFunction implements UnboundFunction {
 
     @Override
     public Integer produceResult(InternalRow input) {
-      return input.isNullAt(NUM_BUCKETS_ORDINAL) || input.isNullAt(VALUE_ORDINAL)
-          ? null
-          : invoke(
-              input.getInt(NUM_BUCKETS_ORDINAL), input.getDecimal(VALUE_ORDINAL, precision, scale));
+      if (input.isNullAt(NUM_BUCKETS_ORDINAL) || input.isNullAt(VALUE_ORDINAL)) {
+        return null;
+      } else {
+        int numBuckets = input.getInt(NUM_BUCKETS_ORDINAL);
+        Decimal value = input.getDecimal(VALUE_ORDINAL, precision, scale);
+        return invoke(numBuckets, value);
+      }
     }
 
     @Override
diff --git a/spark/v3.3/spark/src/main/java/org/apache/iceberg/spark/functions/TruncateFunction.java b/spark/v3.3/spark/src/main/java/org/apache/iceberg/spark/functions/TruncateFunction.java
index 492cda3bed..8cfb529e10 100644
--- a/spark/v3.3/spark/src/main/java/org/apache/iceberg/spark/functions/TruncateFunction.java
+++ b/spark/v3.3/spark/src/main/java/org/apache/iceberg/spark/functions/TruncateFunction.java
@@ -348,8 +348,9 @@ public class TruncateFunction implements UnboundFunction {
       if (input.isNullAt(WIDTH_ORDINAL) || input.isNullAt(VALUE_ORDINAL)) {
         return null;
       } else {
-        return invoke(
-            input.getInt(WIDTH_ORDINAL), input.getDecimal(VALUE_ORDINAL, precision, scale));
+        int width = input.getInt(WIDTH_ORDINAL);
+        Decimal value = input.getDecimal(VALUE_ORDINAL, precision, scale);
+        return invoke(width, value);
       }
     }
   }