[
https://issues.apache.org/jira/browse/SPARK-59091?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Holden Karau updated SPARK-59091:
---------------------------------
Component/s: SQL
> Emit the NaN guard only when both equality operands can be NaN
> --------------------------------------------------------------
>
> Key: SPARK-59091
> URL: https://issues.apache.org/jira/browse/SPARK-59091
> Project: Spark
> Issue Type: Sub-task
> Components: PySpark, SQL
> Affects Versions: 4.3.0
> Reporter: Holden Karau
> Assignee: Jing Zhan
> Priority: Minor
> Labels: pull-request-available
>
> `_nan_guard` emits `isnan(l) | isnan(r)` unless **both** operands are
> provably integral. For an
> unannotated `lambda a, b: a == b` over BIGINT columns the category is plain
> `"numeric"`, so the
> guard is emitted as `isnan(cast(bigint as double))` — provably dead, and the
> optimizer does not
> fold it. Costs roughly 8 plan nodes and per-row work.
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]