Stamatis Zampetakis created CALCITE-2464:
--------------------------------------------

             Summary: Struct types are always not nullable
                 Key: CALCITE-2464
                 URL: https://issues.apache.org/jira/browse/CALCITE-2464
             Project: Calcite
          Issue Type: Bug
          Components: core
    Affects Versions: 1.17.0
            Reporter: Stamatis Zampetakis
            Assignee: Julian Hyde


Struct types are always not nullable. This can lead to bugs in many parts of 
Calcite (e.g., expression simplification, optimization, code generation) that 
are considering the nullability of a RelDataType. 

The method 
[isNullable|https://github.com/apache/calcite/blob/3c6b5ec759caadabb67f09d7a4963cc7d9386d0c/core/src/main/java/org/apache/calcite/rel/type/RelRecordType.java#L55]
 in the RelRecordType, which is used to represent a structured type, always 
returns false. The nullability of the RelRecordType should be a parameter in 
the constructor as it is the case for various other RelDataTypes. 

Additionally, the data type cache should also take into account the nullability 
of the type in order to return a correct equivalent.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to