Github user cloud-fan commented on the issue:
https://github.com/apache/spark/pull/21611
In `ExpressionEncoder.apply`, we have
```
val flat = !ScalaReflection.definedByConstructorParams(tpe)
val inputObject = BoundReference(0, ScalaReflection.dataTypeFor[T],
nullable = !cls.isPrimitive)
val nullSafeInput = if (flat) {
inputObject
} else {
// For input object of Product type, we can't encode it to row if
it's null, as Spark SQL
// doesn't allow top-level row to be null, only its columns can be
null.
AssertNotNull(inputObject, Seq("top level Product input object"))
}
```
does it mean we will not have the null check for `Option[Int]`?
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]