You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Jason Dere (JIRA)" <ji...@apache.org> on 2017/02/15 20:23:41 UTC

[jira] [Commented] (HIVE-15919) Row count mismatch for count * query

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

Jason Dere commented on HIVE-15919:
-----------------------------------

It looks like vectorization is incorrectly adding a CastDecimalToBoolean on the decimal parameter to the vectorized InBloomFilter():
{noformat}
VectorInBloomFilterColDynamicValue[-1:boolean](CastDecimalToBoolean[2:Boolean]))
{noformat}

VectorizationContext.getImplicitCastExpression() just looks wrong - in the case of either decimal parameters or decimal return type, it is always casting the parameters to match the return type.
It looks like this was a quick fix for the mathematical functions, but this is not a correct solution in the general case.

> Row count mismatch for count * query
> ------------------------------------
>
>                 Key: HIVE-15919
>                 URL: https://issues.apache.org/jira/browse/HIVE-15919
>             Project: Hive
>          Issue Type: Bug
>          Components: HiveServer2
>            Reporter: Aswathy Chellammal Sreekumar
>            Assignee: Jason Dere
>         Attachments: table_14.q, table_6.q
>
>
> The following query is returning different output when run against hive and postgres.
> Query:
> SELECT COUNT (*)
> FROM
> (SELECT LAG(COALESCE(t2.int_col_14, t1.int_col_80),22) OVER (ORDER BY t1.tinyint_col_52 DESC) AS int_col
> FROM table_6 t1
> INNER JOIN table_14 t2 ON ((t2.decimal0101_col_55) = (t1.decimal0101_col_9))) AS FOO;
> From hive: 0
> From postgres: 66903279
> Attaching ddl files for the tables.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)