You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@drill.apache.org by "Mehant Baid (JIRA)" <ji...@apache.org> on 2014/11/03 20:28:33 UTC

[jira] [Commented] (DRILL-1445) Incorrect casting of aggregate

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

Mehant Baid commented on DRILL-1445:
------------------------------------

+1 looks good.
We might want to add the newly added return type inference to SqlAvgAggFunction()? 

> Incorrect casting of aggregate
> ------------------------------
>
>                 Key: DRILL-1445
>                 URL: https://issues.apache.org/jira/browse/DRILL-1445
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: Query Planning & Optimization
>    Affects Versions: 0.5.0
>            Reporter: Steven Phillips
>            Assignee: Aman Sinha
>             Fix For: 0.7.0
>
>         Attachments: 0001-DRILL-1455-Add-return-type-inference-strategy-for-ar.patch
>
>
> The following query returns an int when it should be a float:
> 0: jdbc:drill:>  select avg(nationkey - 1) from nat2;
> +------------+
> |   EXPR$0   |
> +------------+
> | 11         |
> +------------+
> 1 row selected (0.27 seconds)
> without the literal, it is correct:
> 0: jdbc:drill:>  select avg(nationkey) from nat2;
> +------------+
> |   EXPR$0   |
> +------------+
> | 12.0       |
> +------------+
> 1 row selected (0.462 seconds)
> Here is the logical plan for the incorrect query:
> 0: jdbc:drill:> explain plan without implementation for select avg(nationkey - 1) from nat2;
> +------------+------------+
> |    text    |    json    |
> +------------+------------+
> | DrillScreenRel
>   DrillProjectRel(EXPR$0=[CAST(/(CastHigh(CASE(=($1, 0), null, $0)), $1)):INTEGER])
>     DrillAggregateRel(group=[{}], agg#0=[$SUM0($0)], agg#1=[COUNT($0)])
>       DrillProjectRel($f0=[-($0, 1)])
>         DrillScanRel(table=[[dfs, drill, nat2]], groupscan=[ParquetGroupScan [entries=[ReadEntryWithPath [path=file:/drill/nat2]], selectionRoot=/drill/nat2, columns=[SchemaPath [`nationkey`]]]])
>  



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