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

Steve Carlin resolved IMPALA-14324.
-----------------------------------
      Assignee: Steve Carlin
    Resolution: Fixed

> Calcite planner: Wrong cardinality shown with is_not_null predicate in scan 
> node
> --------------------------------------------------------------------------------
>
>                 Key: IMPALA-14324
>                 URL: https://issues.apache.org/jira/browse/IMPALA-14324
>             Project: IMPALA
>          Issue Type: Sub-task
>            Reporter: Steve Carlin
>            Assignee: Steve Carlin
>            Priority: Major
>
> Taken from review: [https://gerrit.cloudera.org/#/c/22870]
> When running  TpcdsCpuCostPlannerTest under the java/calcite-planner 
> directory, the cardinality for store_returns is showing up as: (filtered from 
> 86.40M)
> It should be 864M.  The reason it is only .1 times the size is because the 
> is_not_null pred filter selectivity is being treated as filtering out 90% of 
> the rows.  This is due to the Planner::computeSelectivities method using the 
> following lines:
> {code:java}
>     if (selectivities.size() != conjunctSize) {
>       // Some conjuncts have no estimated selectivity. Use a single default
>       // representative selectivity for all those conjuncts.
>       selectivities.add(Expr.DEFAULT_SELECTIVITY);
>     }{code}
> We need the getSelectivity for the "is not null" predicate expression to 
> return the right result.



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

Reply via email to