diff options
author | samelamin <hussam.elamin@gmail.com> | 2017-04-03 17:16:31 -0700 |
---|---|---|
committer | Reynold Xin <rxin@databricks.com> | 2017-04-03 17:16:31 -0700 |
commit | 58c9e6e77ae26345291dd9fce2c57aadcc36f66c (patch) | |
tree | c7a8e7bec4fdf6ea7484ee1f05724672617e2e5f /sql/catalyst | |
parent | 703c42c398fefd3f7f60e1c503c4df50251f8dcf (diff) | |
download | spark-58c9e6e77ae26345291dd9fce2c57aadcc36f66c.tar.gz spark-58c9e6e77ae26345291dd9fce2c57aadcc36f66c.tar.bz2 spark-58c9e6e77ae26345291dd9fce2c57aadcc36f66c.zip |
[SPARK-20145] Fix range case insensitive bug in SQL
## What changes were proposed in this pull request?
Range in SQL should be case insensitive
## How was this patch tested?
unit test
Author: samelamin <hussam.elamin@gmail.com>
Author: samelamin <sam_elamin@discovery.com>
Closes #17487 from samelamin/SPARK-20145.
Diffstat (limited to 'sql/catalyst')
-rw-r--r-- | sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/ResolveTableValuedFunctions.scala | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/ResolveTableValuedFunctions.scala b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/ResolveTableValuedFunctions.scala index 6b3bb68538..8841309939 100644 --- a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/ResolveTableValuedFunctions.scala +++ b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/ResolveTableValuedFunctions.scala @@ -17,9 +17,7 @@ package org.apache.spark.sql.catalyst.analysis -import org.apache.spark.{SparkConf, SparkContext} import org.apache.spark.sql.catalyst.expressions.Expression -import org.apache.spark.sql.catalyst.plans._ import org.apache.spark.sql.catalyst.plans.logical.{LogicalPlan, Range} import org.apache.spark.sql.catalyst.rules._ import org.apache.spark.sql.types.{DataType, IntegerType, LongType} @@ -105,7 +103,7 @@ object ResolveTableValuedFunctions extends Rule[LogicalPlan] { override def apply(plan: LogicalPlan): LogicalPlan = plan resolveOperators { case u: UnresolvedTableValuedFunction if u.functionArgs.forall(_.resolved) => - builtinFunctions.get(u.functionName) match { + builtinFunctions.get(u.functionName.toLowerCase()) match { case Some(tvf) => val resolved = tvf.flatMap { case (argList, resolver) => argList.implicitCast(u.functionArgs) match { |