Skip to content

Commit 1080505

Browse files
committed
SPARK-18368: Add serialization to checkEvaluation.
1 parent 3536f6a commit 1080505

File tree

2 files changed

+10
-21
lines changed

2 files changed

+10
-21
lines changed

sql/catalyst/src/test/scala/org/apache/spark/sql/catalyst/expressions/ExpressionEvalHelper.scala

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,8 @@ import org.scalactic.TripleEqualsSupport.Spread
2222
import org.scalatest.exceptions.TestFailedException
2323
import org.scalatest.prop.GeneratorDrivenPropertyChecks
2424

25-
import org.apache.spark.SparkFunSuite
25+
import org.apache.spark.{SparkConf, SparkFunSuite}
26+
import org.apache.spark.serializer.JavaSerializer
2627
import org.apache.spark.sql.catalyst.{CatalystTypeConverters, InternalRow}
2728
import org.apache.spark.sql.catalyst.expressions.codegen._
2829
import org.apache.spark.sql.catalyst.optimizer.SimpleTestOptimizer
@@ -43,13 +44,15 @@ trait ExpressionEvalHelper extends GeneratorDrivenPropertyChecks {
4344

4445
protected def checkEvaluation(
4546
expression: => Expression, expected: Any, inputRow: InternalRow = EmptyRow): Unit = {
47+
val serializer = new JavaSerializer(new SparkConf()).newInstance
48+
val expr: Expression = serializer.deserialize(serializer.serialize(expression))
4649
val catalystValue = CatalystTypeConverters.convertToCatalyst(expected)
47-
checkEvaluationWithoutCodegen(expression, catalystValue, inputRow)
48-
checkEvaluationWithGeneratedMutableProjection(expression, catalystValue, inputRow)
49-
if (GenerateUnsafeProjection.canSupport(expression.dataType)) {
50-
checkEvalutionWithUnsafeProjection(expression, catalystValue, inputRow)
50+
checkEvaluationWithoutCodegen(expr, catalystValue, inputRow)
51+
checkEvaluationWithGeneratedMutableProjection(expr, catalystValue, inputRow)
52+
if (GenerateUnsafeProjection.canSupport(expr.dataType)) {
53+
checkEvalutionWithUnsafeProjection(expr, catalystValue, inputRow)
5154
}
52-
checkEvaluationWithOptimization(expression, catalystValue, inputRow)
55+
checkEvaluationWithOptimization(expr, catalystValue, inputRow)
5356
}
5457

5558
/**

sql/catalyst/src/test/scala/org/apache/spark/sql/catalyst/expressions/RegexpExpressionsSuite.scala

Lines changed: 1 addition & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,7 @@
1717

1818
package org.apache.spark.sql.catalyst.expressions
1919

20-
import org.apache.spark.{SparkConf, SparkFunSuite}
21-
import org.apache.spark.serializer.JavaSerializer
20+
import org.apache.spark.SparkFunSuite
2221
import org.apache.spark.sql.catalyst.dsl.expressions._
2322
import org.apache.spark.sql.types.StringType
2423

@@ -192,17 +191,4 @@ class RegexpExpressionsSuite extends SparkFunSuite with ExpressionEvalHelper {
192191
checkEvaluation(StringSplit(s1, s2), null, row3)
193192
}
194193

195-
test("RegExpReplace serialization") {
196-
val serializer = new JavaSerializer(new SparkConf()).newInstance
197-
198-
val row = create_row("abc", "b", "")
199-
200-
val s = 's.string.at(0)
201-
val p = 'p.string.at(1)
202-
val r = 'r.string.at(2)
203-
204-
val expr: RegExpReplace = serializer.deserialize(serializer.serialize(RegExpReplace(s, p, r)))
205-
checkEvaluation(expr, "ac", row)
206-
}
207-
208194
}

0 commit comments

Comments
 (0)