Group by on a combination of disitinct and non distinct aggregates can return 
serialization errors with map side aggregations.
------------------------------------------------------------------------------------------------------------------------------

                 Key: HIVE-222
                 URL: https://issues.apache.org/jira/browse/HIVE-222
             Project: Hadoop Hive
          Issue Type: Bug
          Components: Query Processor
            Reporter: Ashish Thusoo
            Assignee: Ashish Thusoo


For queries of the form (groupby2_map.q in the source)

SELECT x, count(DISTINCT y), SUM(y) FROM t GROUP BY x

when map side aggregation is on 

hive.map.aggr=true (This is off by default)

The following exception can occur:
    [junit] Caused by: java.lang.ClassCastException: java.lang.Long cannot be 
cast to java.lang.Double
    [junit]     at 
org.apache.hadoop.hive.serde2.dynamic_type.DynamicSerDeTypeDouble.serialize(DynamicSerDeTypeDouble.java:60)
    [junit]     at 
org.apache.hadoop.hive.serde2.dynamic_type.DynamicSerDeFieldList.serialize(DynamicSerDeFieldList.java:235)
    [junit]     at 
org.apache.hadoop.hive.serde2.dynamic_type.DynamicSerDeStructBase.serialize(DynamicSerDeStructBase.java:81)
    [junit]     at 
org.apache.hadoop.hive.serde2.dynamic_type.DynamicSerDe.serialize(DynamicSerDe.java:174)


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to