[ 
https://issues.apache.org/jira/browse/FLINK-7137?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16093188#comment-16093188
 ] 

ASF GitHub Bot commented on FLINK-7137:
---------------------------------------

Github user twalthr commented on the issue:

    https://github.com/apache/flink/pull/4314
  
    I tried to improve the stability regarding nullable types. This should fix 
FLINK-7177 and FLINK-7137. It ensures that all types have the correct 
nullability. By default, types are always nullable. If they are not nullable, 
than we know it for sure.
    
    https://github.com/apache/flink/compare/master...twalthr:FLINK-7137
    
    What do you think? @walterddr @fhueske 


> Flink table API defaults top level fields as nullable and all nested fields 
> within CompositeType as non-nullable
> ----------------------------------------------------------------------------------------------------------------
>
>                 Key: FLINK-7137
>                 URL: https://issues.apache.org/jira/browse/FLINK-7137
>             Project: Flink
>          Issue Type: Bug
>          Components: Table API & SQL
>    Affects Versions: 1.3.1
>            Reporter: Rong Rong
>            Assignee: Rong Rong
>
> Right now FlinkTypeFactory does conversion between Flink TypeInformation to 
> Calcite RelDataType by assuming the following: 
> All top level fields will be set to nullable and all nested fields within 
> CompositeRelDataType and GenericRelDataType will be set to Calcite default 
> (which is non-nullable). 
> This triggers Calcite SQL optimization engine drop all `IS NOT NULL` clause 
> on nested fields, and would not be able to optimize when top level fields 
> were actually non-nullable.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to