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

Liang-Chi Hsieh commented on SPARK-17897:
-----------------------------------------

I think the original idea should be, in scanNullIntolerantExpr, it scans 
IsNotNull(_: NullIntolerant) and returns the attributes in the IsNotNull 
expression.

If Attribute is not NullIntolerant, it won't return the attributes from an 
expression like IsNotNull('a) && IsNotNull('b).

> not isnotnull is converted to the always false condition isnotnull && not 
> isnotnull
> -----------------------------------------------------------------------------------
>
>                 Key: SPARK-17897
>                 URL: https://issues.apache.org/jira/browse/SPARK-17897
>             Project: Spark
>          Issue Type: Bug
>          Components: Optimizer
>    Affects Versions: 2.0.0, 2.0.1
>            Reporter: Jordan Halterman
>              Labels: correctness
>
> When a logical plan is built containing the following somewhat nonsensical 
> filter:
> {{Filter (NOT isnotnull($f0#212))}}
> During optimization the filter is converted into a condition that will always 
> fail:
> {{Filter (isnotnull($f0#212) && NOT isnotnull($f0#212))}}
> This appears to be caused by the following check for {{NullIntolerant}}:
> https://github.com/apache/spark/commit/df68beb85de59bb6d35b2a8a3b85dbc447798bf5#diff-203ac90583cebe29a92c1d812c07f102R63
> Which recurses through the expression and extracts nested {{IsNotNull}} 
> calls, converting them to {{IsNotNull}} calls on the attribute at the root 
> level:
> https://github.com/apache/spark/commit/df68beb85de59bb6d35b2a8a3b85dbc447798bf5#diff-203ac90583cebe29a92c1d812c07f102R49
> This results in the nonsensical condition above.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@spark.apache.org
For additional commands, e-mail: issues-h...@spark.apache.org

Reply via email to