Skip to content

Commit 71d15e7

Browse files
author
xinyunh
committed
remove POWER part
1 parent 8843643 commit 71d15e7

File tree

3 files changed

+0
-75
lines changed

3 files changed

+0
-75
lines changed

sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/SqlParser.scala

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -126,8 +126,6 @@ class SqlParser extends StandardTokenParsers with PackratParsers {
126126
protected val SUBSTRING = Keyword("SUBSTRING")
127127
protected val SQRT = Keyword("SQRT")
128128
protected val ABS = Keyword("ABS")
129-
protected val POW = Keyword("POW")
130-
protected val POWER = Keyword("POWER")
131129

132130
// Use reflection to find the reserved words defined in this class.
133131
protected val reservedWords =
@@ -332,9 +330,6 @@ class SqlParser extends StandardTokenParsers with PackratParsers {
332330
} |
333331
SQRT ~> "(" ~> expression <~ ")" ^^ { case exp => Sqrt(exp) } |
334332
ABS ~> "(" ~> expression <~ ")" ^^ { case exp => Abs(exp) } |
335-
(POW | POWER) ~> "(" ~> expression ~ "," ~ expression <~ ")" ^^ {
336-
case s ~ "," ~ p => Power(s,p)
337-
} |
338333
ident ~ "(" ~ repsep(expression, ",") <~ ")" ^^ {
339334
case udfName ~ _ ~ exprs => UnresolvedFunction(udfName, exprs)
340335
}

sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/arithmetic.scala

Lines changed: 0 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -144,40 +144,3 @@ case class Abs(child: Expression) extends UnaryExpression {
144144

145145
override def eval(input: Row): Any = n1(child, input, _.abs(_))
146146
}
147-
148-
/**
149-
* A function that get the power value of two parameters.
150-
* First one is taken as base while second one taken as exponent
151-
*/
152-
case class Power(base: Expression, exponent: Expression) extends Expression {
153-
type EvaluatedType = Any
154-
155-
def dataType: DataType = {
156-
if (!resolved) {
157-
throw new UnresolvedException(this, s"Cannot resolve since $children are not resolved")
158-
}
159-
DoubleType
160-
}
161-
override def foldable = base.foldable && exponent.foldable
162-
def nullable: Boolean = base.nullable || exponent.nullable
163-
override def toString = s"Power($base, $exponent)"
164-
165-
override def children = base :: exponent :: Nil
166-
167-
override def eval(input: Row): Any = {
168-
def convertToDouble(num: EvaluatedType): Double = {
169-
num match {
170-
case d:Double => d
171-
case i:Integer => i.doubleValue()
172-
case f:Float => f.toDouble
173-
}
174-
}
175-
176-
val base_v = base.eval(input)
177-
val exponent_v = exponent.eval(input)
178-
179-
if ((base_v == null) || (exponent_v == null)) null
180-
else pow(convertToDouble(base_v), convertToDouble(exponent_v))
181-
}
182-
183-
}

sql/core/src/test/scala/org/apache/spark/sql/SQLQuerySuite.scala

Lines changed: 0 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -53,39 +53,6 @@ class SQLQuerySuite extends QueryTest with BeforeAndAfterAll {
5353
2.5)
5454
}
5555

56-
test("SPARK-3176 Added Parser of SQL POWER()") {
57-
checkAnswer(
58-
sql("SELECT POWER(0, 512.0)"),
59-
0.0)
60-
checkAnswer(
61-
sql("SELECT POW(1.0, 256.0)"),
62-
1.0)
63-
checkAnswer(
64-
sql("SELECT POWER(1, -128)"),
65-
1.0)
66-
checkAnswer(
67-
sql("SELECT POW(-1.0, -63)"),
68-
-1.0)
69-
checkAnswer(
70-
sql("SELECT POWER(-1, 32.0)"),
71-
1.0)
72-
checkAnswer(
73-
sql("SELECT POW(2, 8)"),
74-
256.0)
75-
checkAnswer(
76-
sql("SELECT POWER(0.5, 2)"),
77-
0.25)
78-
checkAnswer(
79-
sql("SELECT POW(2, -2)"),
80-
0.25)
81-
checkAnswer(
82-
sql("SELECT POWER(8, 1)"),
83-
8.0)
84-
checkAnswer(
85-
sql("SELECT POW(16, 0.5)"),
86-
4.0)
87-
}
88-
8956
test("SPARK-3176 Added Parser of SQL LAST()") {
9057
checkAnswer(
9158
sql("SELECT LAST(n) FROM lowerCaseData"),

0 commit comments

Comments
 (0)