[ https://issues.apache.org/jira/browse/HIVE-27059?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
ASF GitHub Bot updated HIVE-27059: ---------------------------------- Labels: pull-request-available (was: ) > Wrong object inspector will be created when use collect_list and disable > map-side aggregation > --------------------------------------------------------------------------------------------- > > Key: HIVE-27059 > URL: https://issues.apache.org/jira/browse/HIVE-27059 > Project: Hive > Issue Type: Bug > Components: Query Planning > Affects Versions: 2.3.8, 3.1.3, 4.0.0-alpha-2 > Environment: > Reporter: Genmao Yu > Assignee: Genmao Yu > Priority: Major > Labels: pull-request-available > Time Spent: 10m > Remaining Estimate: 0h > > Query will fail when use collect_list (or collect_set) and disable map-side > aggregationg: > {code:java} > Caused by: java.lang.ClassCastException: > org.apache.hadoop.hive.serde2.lazybinary.LazyBinaryMap cannot be cast to > java.util.Map > at > org.apache.hadoop.hive.serde2.objectinspector.StandardMapObjectInspector.getMap(StandardMapObjectInspector.java:85) > at > org.apache.hadoop.hive.serde2.objectinspector.ObjectInspectorUtils.copyToStandardObject(ObjectInspectorUtils.java:437) > at > org.apache.hadoop.hive.serde2.objectinspector.ObjectInspectorUtils.copyToStandardObject(ObjectInspectorUtils.java:362) > at > org.apache.hadoop.hive.ql.udf.generic.GenericUDAFMkCollectionEvaluator.putIntoCollection(GenericUDAFMkCollectionEvaluator.java:154) > at > org.apache.hadoop.hive.ql.udf.generic.GenericUDAFMkCollectionEvaluator.iterate(GenericUDAFMkCollectionEvaluator.java:120) > at > org.apache.hadoop.hive.ql.udf.generic.GenericUDAFEvaluator.aggregate(GenericUDAFEvaluator.java:192) > at > org.apache.hadoop.hive.ql.exec.GroupByOperator.updateAggregations(GroupByOperator.java:638) > at > org.apache.hadoop.hive.ql.exec.GroupByOperator.processAggr(GroupByOperator.java:877) > at > org.apache.hadoop.hive.ql.exec.GroupByOperator.processKey(GroupByOperator.java:721) > at > org.apache.hadoop.hive.ql.exec.GroupByOperator.process(GroupByOperator.java:787) > {code} > To reproduce this issue: > {code:sql} > create table tb1 (a int, b string, c string); > insert into tb1 values (1, "100", "101"); > insert into tb1 values (1, "102", "103"); > insert into tb1 values (2, "200", "201"); > set hive.map.aggr=false; > select a, collect_list(map("b",b,"c",c)) as col1 from tb1 group by a; > select a, collect_set(array(b, c)) as col1 from tb1 group by a; > {code} > To work around this issue: > {code:sql} > set hive.map.aggr=true; > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)