Details
-
Sub-task
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
2.4.0
-
None
Description
This was fixed in SPARK-24891 and was then broken by SPARK-25044.
The unit test in AnalysisSuite added in SPARK-24891 should have failed but didn't because it wasn't properly updated after the ScalaUDF constructor signature change. In the meantime, the other two end-to-end tests added in SPARK-24891 were shadowed by SPARK-24865.
So the unit test mentioned above, if updated properly, can reproduce this issue:
test("SPARK-24891 Fix HandleNullInputsForUDF rule") { val a = testRelation.output(0) val func = (x: Int, y: Int) => x + y val udf1 = ScalaUDF(func, IntegerType, a :: a :: Nil, nullableTypes = false :: false :: Nil) val udf2 = ScalaUDF(func, IntegerType, a :: udf1 :: Nil, nullableTypes = false :: false :: Nil) val plan = Project(Alias(udf2, "")() :: Nil, testRelation) comparePlans(plan.analyze, plan.analyze.analyze) }
Attachments
Issue Links
- is a clone of
-
SPARK-25044 Address translation of LMF closure primitive args to Object in Scala 2.12
- Resolved
- links to