You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@arrow.apache.org by "Benjamin Kietzman (Jira)" <ji...@apache.org> on 2019/08/29 13:40:00 UTC

[jira] [Commented] (ARROW-6386) [C++][Documentation] Explicit documentation of null slot interpretation

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

Benjamin Kietzman commented on ARROW-6386:
------------------------------------------

If the current boolean kernel behavior is necessary for some use cases an option struct could be added to make this configurable

> [C++][Documentation] Explicit documentation of null slot interpretation
> -----------------------------------------------------------------------
>
>                 Key: ARROW-6386
>                 URL: https://issues.apache.org/jira/browse/ARROW-6386
>             Project: Apache Arrow
>          Issue Type: Improvement
>          Components: C++, Documentation
>            Reporter: Benjamin Kietzman
>            Assignee: Benjamin Kietzman
>            Priority: Major
>
> To my knowledge, there isn't explicit documentation on how null slots in an array should be interpreted. SQL uses Kleene logic, wherein a null is explicitly an unknown rather than a special value. This yields for example `(null AND false) -> false`, since `(x AND false) -> false` for all possible values of x. This is also the behavior of Gandiva's boolean expressions.
> By contrast the boolean kernels implement something closer to the behavior of NaN: `(null AND false) -> null`. I think this is simply an error in the boolean kernels but in any case I think explicit documentation should be added to prevent future confusion.



--
This message was sent by Atlassian Jira
(v8.3.2#803003)