diff options
author | Daoyuan Wang <daoyuan.wang@intel.com> | 2015-10-20 09:20:35 -0700 |
---|---|---|
committer | Davies Liu <davies.liu@gmail.com> | 2015-10-20 09:20:35 -0700 |
commit | 94139557c56cea318d4a4f82a4deaf72198f349a (patch) | |
tree | a2b0840b66b17622a4a6bf8d8cc6d95f36e35a89 /sql/catalyst/src | |
parent | 60851bc7bf1fe702cde1d1548efd8016411e1682 (diff) | |
download | spark-94139557c56cea318d4a4f82a4deaf72198f349a.tar.gz spark-94139557c56cea318d4a4f82a4deaf72198f349a.tar.bz2 spark-94139557c56cea318d4a4f82a4deaf72198f349a.zip |
[SPARK-10463] [SQL] remove PromotePrecision during optimization
PromotePrecision is not necessary after HiveTypeCoercion done.
Jira:
https://issues.apache.org/jira/browse/SPARK-10463
Author: Daoyuan Wang <daoyuan.wang@intel.com>
Closes #8621 from adrian-wang/promoterm.
Diffstat (limited to 'sql/catalyst/src')
-rw-r--r-- | sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/optimizer/Optimizer.scala | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/optimizer/Optimizer.scala b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/optimizer/Optimizer.scala index 63602eaa8c..6557c7005d 100644 --- a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/optimizer/Optimizer.scala +++ b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/optimizer/Optimizer.scala @@ -57,7 +57,7 @@ object DefaultOptimizer extends Optimizer { ConstantFolding, LikeSimplification, BooleanSimplification, - RemovePositive, + RemoveDispensable, SimplifyFilters, SimplifyCasts, SimplifyCaseConversionExpressions) :: @@ -784,11 +784,12 @@ object SimplifyCasts extends Rule[LogicalPlan] { } /** - * Removes [[UnaryPositive]] identify function + * Removes nodes that are not necessary. */ -object RemovePositive extends Rule[LogicalPlan] { +object RemoveDispensable extends Rule[LogicalPlan] { def apply(plan: LogicalPlan): LogicalPlan = plan transformAllExpressions { case UnaryPositive(child) => child + case PromotePrecision(child) => child } } |