diff options
author | Cheng Hao <hao.cheng@intel.com> | 2015-06-23 10:52:17 -0700 |
---|---|---|
committer | Michael Armbrust <michael@databricks.com> | 2015-06-23 10:52:17 -0700 |
commit | 7b1450b666f88452e7fe969a6d59e8b24842ea39 (patch) | |
tree | 8ef3d644708111352cec4d936fd8a17bb74fe688 /sql/core/src | |
parent | 4f7fbefb8db56ecaab66bb0ac2ab124416fefe58 (diff) | |
download | spark-7b1450b666f88452e7fe969a6d59e8b24842ea39.tar.gz spark-7b1450b666f88452e7fe969a6d59e8b24842ea39.tar.bz2 spark-7b1450b666f88452e7fe969a6d59e8b24842ea39.zip |
[SPARK-7235] [SQL] Refactor the grouping sets
The logical plan `Expand` takes the `output` as constructor argument, which break the references chain. We need to refactor the code, as well as the column pruning.
Author: Cheng Hao <hao.cheng@intel.com>
Closes #5780 from chenghao-intel/expand and squashes the following commits:
76e4aa4 [Cheng Hao] revert the change for case insenstive
7c10a83 [Cheng Hao] refactor the grouping sets
Diffstat (limited to 'sql/core/src')
-rw-r--r-- | sql/core/src/main/scala/org/apache/spark/sql/execution/SparkStrategies.scala | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sql/core/src/main/scala/org/apache/spark/sql/execution/SparkStrategies.scala b/sql/core/src/main/scala/org/apache/spark/sql/execution/SparkStrategies.scala index 5c420eb9d7..1ff1cc224d 100644 --- a/sql/core/src/main/scala/org/apache/spark/sql/execution/SparkStrategies.scala +++ b/sql/core/src/main/scala/org/apache/spark/sql/execution/SparkStrategies.scala @@ -308,8 +308,8 @@ private[sql] abstract class SparkStrategies extends QueryPlanner[SparkPlan] { execution.Project(projectList, planLater(child)) :: Nil case logical.Filter(condition, child) => execution.Filter(condition, planLater(child)) :: Nil - case logical.Expand(projections, output, child) => - execution.Expand(projections, output, planLater(child)) :: Nil + case e @ logical.Expand(_, _, _, child) => + execution.Expand(e.projections, e.output, planLater(child)) :: Nil case logical.Aggregate(group, agg, child) => execution.Aggregate(partial = false, group, agg, planLater(child)) :: Nil case logical.Window(projectList, windowExpressions, spec, child) => |