aboutsummaryrefslogtreecommitdiff
path: root/sql/catalyst
diff options
context:
space:
mode:
authorsamelamin <hussam.elamin@gmail.com>2017-04-03 17:16:31 -0700
committerReynold Xin <rxin@databricks.com>2017-04-03 17:16:31 -0700
commit58c9e6e77ae26345291dd9fce2c57aadcc36f66c (patch)
treec7a8e7bec4fdf6ea7484ee1f05724672617e2e5f /sql/catalyst
parent703c42c398fefd3f7f60e1c503c4df50251f8dcf (diff)
downloadspark-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.scala4
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 {