File tree Expand file tree Collapse file tree 1 file changed +3
-13
lines changed
sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/plans/logical Expand file tree Collapse file tree 1 file changed +3
-13
lines changed Original file line number Diff line number Diff line change @@ -41,19 +41,9 @@ object CatalystSerde {
4141 }
4242
4343 def generateObjAttr [T : Encoder ]: Attribute = {
44- val deserializer = encoderFor[T ].deserializer
45- val dataType = deserializer.dataType
46- val nullable = if (deserializer.resolved) {
47- deserializer.nullable
48- } else {
49- // Since deserializer is not resolved here, cannot access deserializer.nullable.
50- // We infer nullability from DataType
51- dataType match {
52- case BooleanType | FloatType | DoubleType => false
53- case _ : IntegralType => false
54- case _ => true
55- }
56- }
44+ val enc = encoderFor[T ]
45+ val dataType = enc.deserializer.dataType
46+ val nullable = ! enc.clsTag.runtimeClass.isPrimitive
5747 AttributeReference (" obj" , dataType, nullable = nullable)()
5848 }
5949}
You can’t perform that action at this time.
0 commit comments