[ 
https://issues.apache.org/jira/browse/FLINK-11785?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Timo Walther closed FLINK-11785.
--------------------------------
       Resolution: Fixed
    Fix Version/s: 1.8.0
     Release Note: Null literals in the Table API need to be defined with 
`nullOf(type)` instead of `Null(type)` from now on. The old approach is 
deprecated.

Fixed in 1.8.0: 76838678b8f4f81b187a4449bfde05d45c4fdddb
Fixed in 1.9.0: dd68edd8e6519013d2ab3bd2d4d815f1997ac0fe

> Replace case class Null(type) in Table API
> ------------------------------------------
>
>                 Key: FLINK-11785
>                 URL: https://issues.apache.org/jira/browse/FLINK-11785
>             Project: Flink
>          Issue Type: Improvement
>          Components: API / Table SQL
>            Reporter: Timo Walther
>            Assignee: Timo Walther
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 1.8.0
>
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> FLINK-11449 has shown parts of the API that have not been designed properly. 
> Especially, direct usages of case classes that will be only in the planner 
> module should not be exposed through the API.
> Using {{null}} for representing a null literal is currently not supported in 
> the Table API as a general {{NULL}} type and/or proper type inference is 
> missing. Therefore, nulls must be typed using {{Null(Type.STRING)}}. However, 
> this encourages users to use case classes instead of the Scala DSL.
> We could implement a implicit object for {{Null}}, however, all functions and 
> literals currently start with a lower case except for this object. I would 
> recommend to introduce {{nullOf(type)}} instead. This would allow us to have 
> {{nullOf(type)}} and {{null}} in the future.



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

Reply via email to