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

Chris Dennis commented on CALCITE-6680:
---------------------------------------

It's in the attached patch. If you revert the fix in {{RexImpTable}}, and 
remove the assertion on the plan contents then you'll see a 
{{NullPointerException}} when the plan code tries to dereference the null 
column value.

> RexImpTable erroneously declares NullPolicy.NONE for IS_EMPTY
> -------------------------------------------------------------
>
>                 Key: CALCITE-6680
>                 URL: https://issues.apache.org/jira/browse/CALCITE-6680
>             Project: Calcite
>          Issue Type: Bug
>          Components: core
>            Reporter: Chris Dennis
>            Priority: Major
>         Attachments: is-empty-nullable.patch
>
>
> RexImpTable implements {{IS EMPTY}} and {{IS NOT EMPTY}} using 
> {{Collections.isEmpty()}} but declares them as {{NullPolicy.NONE}}. ThisĀ 
> causes nullable array and map columns to throw NPE at execution time when 
> hitting null values. I strongly suspect that other collection operators are 
> similarly misclassified and would run in to issues is used against nullable 
> types.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to