You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@spark.apache.org by we...@apache.org on 2021/09/08 06:06:33 UTC

[spark] branch master updated: [SPARK-34952][SQL][FOLLOWUP] Change column type to be NamedReference

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

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


The following commit(s) were added to refs/heads/master by this push:
     new 23794fb  [SPARK-34952][SQL][FOLLOWUP] Change column type to be NamedReference
23794fb is described below

commit 23794fb303e94951ad00b74bcfd334e5477d1ebb
Author: Huaxin Gao <hu...@apple.com>
AuthorDate: Wed Sep 8 14:05:44 2021 +0800

    [SPARK-34952][SQL][FOLLOWUP] Change column type to be NamedReference
    
    ### What changes were proposed in this pull request?
    Currently, we have `FieldReference` for aggregate column type, should be `NamedReference` instead
    
    ### Why are the changes needed?
    `FieldReference` is a private class, should use `NamedReference` instead
    
    ### Does this PR introduce _any_ user-facing change?
    No
    
    ### How was this patch tested?
    existing tests
    
    Closes #33927 from huaxingao/agg_followup.
    
    Authored-by: Huaxin Gao <hu...@apple.com>
    Signed-off-by: Wenchen Fan <we...@databricks.com>
---
 .../spark/sql/connector/expressions/aggregate/Aggregation.java   | 8 ++++----
 .../apache/spark/sql/connector/expressions/aggregate/Count.java  | 8 ++++----
 .../apache/spark/sql/connector/expressions/aggregate/Max.java    | 8 ++++----
 .../apache/spark/sql/connector/expressions/aggregate/Min.java    | 8 ++++----
 .../apache/spark/sql/connector/expressions/aggregate/Sum.java    | 8 ++++----
 .../spark/sql/execution/datasources/DataSourceStrategy.scala     | 9 ++++-----
 6 files changed, 24 insertions(+), 25 deletions(-)

diff --git a/sql/catalyst/src/main/java/org/apache/spark/sql/connector/expressions/aggregate/Aggregation.java b/sql/catalyst/src/main/java/org/apache/spark/sql/connector/expressions/aggregate/Aggregation.java
index 0392523..cf7dbb2 100644
--- a/sql/catalyst/src/main/java/org/apache/spark/sql/connector/expressions/aggregate/Aggregation.java
+++ b/sql/catalyst/src/main/java/org/apache/spark/sql/connector/expressions/aggregate/Aggregation.java
@@ -20,7 +20,7 @@ package org.apache.spark.sql.connector.expressions.aggregate;
 import java.io.Serializable;
 
 import org.apache.spark.annotation.Evolving;
-import org.apache.spark.sql.connector.expressions.FieldReference;
+import org.apache.spark.sql.connector.expressions.NamedReference;
 
 /**
  * Aggregation in SQL statement.
@@ -30,14 +30,14 @@ import org.apache.spark.sql.connector.expressions.FieldReference;
 @Evolving
 public final class Aggregation implements Serializable {
   private final AggregateFunc[] aggregateExpressions;
-  private final FieldReference[] groupByColumns;
+  private final NamedReference[] groupByColumns;
 
-  public Aggregation(AggregateFunc[] aggregateExpressions, FieldReference[] groupByColumns) {
+  public Aggregation(AggregateFunc[] aggregateExpressions, NamedReference[] groupByColumns) {
     this.aggregateExpressions = aggregateExpressions;
     this.groupByColumns = groupByColumns;
   }
 
   public AggregateFunc[] aggregateExpressions() { return aggregateExpressions; }
 
-  public FieldReference[] groupByColumns() { return groupByColumns; }
+  public NamedReference[] groupByColumns() { return groupByColumns; }
 }
diff --git a/sql/catalyst/src/main/java/org/apache/spark/sql/connector/expressions/aggregate/Count.java b/sql/catalyst/src/main/java/org/apache/spark/sql/connector/expressions/aggregate/Count.java
index 14493a4..1273886 100644
--- a/sql/catalyst/src/main/java/org/apache/spark/sql/connector/expressions/aggregate/Count.java
+++ b/sql/catalyst/src/main/java/org/apache/spark/sql/connector/expressions/aggregate/Count.java
@@ -18,7 +18,7 @@
 package org.apache.spark.sql.connector.expressions.aggregate;
 
 import org.apache.spark.annotation.Evolving;
-import org.apache.spark.sql.connector.expressions.FieldReference;
+import org.apache.spark.sql.connector.expressions.NamedReference;
 
 /**
  * An aggregate function that returns the number of the specific row in a group.
@@ -27,15 +27,15 @@ import org.apache.spark.sql.connector.expressions.FieldReference;
  */
 @Evolving
 public final class Count implements AggregateFunc {
-  private final FieldReference column;
+  private final NamedReference column;
   private final boolean isDistinct;
 
-  public Count(FieldReference column, boolean isDistinct) {
+  public Count(NamedReference column, boolean isDistinct) {
     this.column = column;
     this.isDistinct = isDistinct;
   }
 
-  public FieldReference column() { return column; }
+  public NamedReference column() { return column; }
   public boolean isDistinct() { return isDistinct; }
 
   @Override
diff --git a/sql/catalyst/src/main/java/org/apache/spark/sql/connector/expressions/aggregate/Max.java b/sql/catalyst/src/main/java/org/apache/spark/sql/connector/expressions/aggregate/Max.java
index 985fd80..ed07cc9 100644
--- a/sql/catalyst/src/main/java/org/apache/spark/sql/connector/expressions/aggregate/Max.java
+++ b/sql/catalyst/src/main/java/org/apache/spark/sql/connector/expressions/aggregate/Max.java
@@ -18,7 +18,7 @@
 package org.apache.spark.sql.connector.expressions.aggregate;
 
 import org.apache.spark.annotation.Evolving;
-import org.apache.spark.sql.connector.expressions.FieldReference;
+import org.apache.spark.sql.connector.expressions.NamedReference;
 
 /**
  * An aggregate function that returns the maximum value in a group.
@@ -27,11 +27,11 @@ import org.apache.spark.sql.connector.expressions.FieldReference;
  */
 @Evolving
 public final class Max implements AggregateFunc {
-  private final FieldReference column;
+  private final NamedReference column;
 
-  public Max(FieldReference column) { this.column = column; }
+  public Max(NamedReference column) { this.column = column; }
 
-  public FieldReference column() { return column; }
+  public NamedReference column() { return column; }
 
   @Override
   public String toString() { return "MAX(" + column.describe() + ")"; }
diff --git a/sql/catalyst/src/main/java/org/apache/spark/sql/connector/expressions/aggregate/Min.java b/sql/catalyst/src/main/java/org/apache/spark/sql/connector/expressions/aggregate/Min.java
index 7b7b557..2e76103 100644
--- a/sql/catalyst/src/main/java/org/apache/spark/sql/connector/expressions/aggregate/Min.java
+++ b/sql/catalyst/src/main/java/org/apache/spark/sql/connector/expressions/aggregate/Min.java
@@ -18,7 +18,7 @@
 package org.apache.spark.sql.connector.expressions.aggregate;
 
 import org.apache.spark.annotation.Evolving;
-import org.apache.spark.sql.connector.expressions.FieldReference;
+import org.apache.spark.sql.connector.expressions.NamedReference;
 
 /**
  * An aggregate function that returns the minimum value in a group.
@@ -27,11 +27,11 @@ import org.apache.spark.sql.connector.expressions.FieldReference;
  */
 @Evolving
 public final class Min implements AggregateFunc {
-  private final FieldReference column;
+  private final NamedReference column;
 
-  public Min(FieldReference column) { this.column = column; }
+  public Min(NamedReference column) { this.column = column; }
 
-  public FieldReference column() { return column; }
+  public NamedReference column() { return column; }
 
   @Override
   public String toString() { return "MIN(" + column.describe() + ")"; }
diff --git a/sql/catalyst/src/main/java/org/apache/spark/sql/connector/expressions/aggregate/Sum.java b/sql/catalyst/src/main/java/org/apache/spark/sql/connector/expressions/aggregate/Sum.java
index 66ce436..057ebd8 100644
--- a/sql/catalyst/src/main/java/org/apache/spark/sql/connector/expressions/aggregate/Sum.java
+++ b/sql/catalyst/src/main/java/org/apache/spark/sql/connector/expressions/aggregate/Sum.java
@@ -18,7 +18,7 @@
 package org.apache.spark.sql.connector.expressions.aggregate;
 
 import org.apache.spark.annotation.Evolving;
-import org.apache.spark.sql.connector.expressions.FieldReference;
+import org.apache.spark.sql.connector.expressions.NamedReference;
 
 /**
  * An aggregate function that returns the summation of all the values in a group.
@@ -27,15 +27,15 @@ import org.apache.spark.sql.connector.expressions.FieldReference;
  */
 @Evolving
 public final class Sum implements AggregateFunc {
-  private final FieldReference column;
+  private final NamedReference column;
   private final boolean isDistinct;
 
-  public Sum(FieldReference column, boolean isDistinct) {
+  public Sum(NamedReference column, boolean isDistinct) {
     this.column = column;
     this.isDistinct = isDistinct;
   }
 
-  public FieldReference column() { return column; }
+  public NamedReference column() { return column; }
   public boolean isDistinct() { return isDistinct; }
 
   @Override
diff --git a/sql/core/src/main/scala/org/apache/spark/sql/execution/datasources/DataSourceStrategy.scala b/sql/core/src/main/scala/org/apache/spark/sql/execution/datasources/DataSourceStrategy.scala
index 30818b1..43a35bf 100644
--- a/sql/core/src/main/scala/org/apache/spark/sql/execution/datasources/DataSourceStrategy.scala
+++ b/sql/core/src/main/scala/org/apache/spark/sql/execution/datasources/DataSourceStrategy.scala
@@ -705,20 +705,19 @@ object DataSourceStrategy
     if (aggregates.filter.isEmpty) {
       aggregates.aggregateFunction match {
         case aggregate.Min(PushableColumnWithoutNestedColumn(name)) =>
-          Some(new Min(FieldReference(name).asInstanceOf[FieldReference]))
+          Some(new Min(FieldReference(name)))
         case aggregate.Max(PushableColumnWithoutNestedColumn(name)) =>
-          Some(new Max(FieldReference(name).asInstanceOf[FieldReference]))
+          Some(new Max(FieldReference(name)))
         case count: aggregate.Count if count.children.length == 1 =>
           count.children.head match {
             // SELECT COUNT(*) FROM table is translated to SELECT 1 FROM table
             case Literal(_, _) => Some(new CountStar())
             case PushableColumnWithoutNestedColumn(name) =>
-              Some(new Count(FieldReference(name).asInstanceOf[FieldReference],
-                aggregates.isDistinct))
+              Some(new Count(FieldReference(name), aggregates.isDistinct))
             case _ => None
           }
         case sum @ aggregate.Sum(PushableColumnWithoutNestedColumn(name), _) =>
-          Some(new Sum(FieldReference(name).asInstanceOf[FieldReference], aggregates.isDistinct))
+          Some(new Sum(FieldReference(name), aggregates.isDistinct))
         case _ => None
       }
     } else {

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@spark.apache.org
For additional commands, e-mail: commits-help@spark.apache.org