You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Jonathan Chang (JIRA)" <ji...@apache.org> on 2011/09/07 22:23:11 UTC
[jira] [Updated] (HIVE-2223) support grouping on complex types in
Hive
[ https://issues.apache.org/jira/browse/HIVE-2223?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jonathan Chang updated HIVE-2223:
---------------------------------
Status: Patch Available (was: Open)
This adds hashing functions for MAP and LIST object inspectors, and changes the default map comparator to non-null. These changes allow one to group by complex types.
> support grouping on complex types in Hive
> -----------------------------------------
>
> Key: HIVE-2223
> URL: https://issues.apache.org/jira/browse/HIVE-2223
> Project: Hive
> Issue Type: New Feature
> Reporter: Kate Ting
> Assignee: Jonathan Chang
> Priority: Minor
> Attachments: HIVE-2223.patch
>
>
> Creating a query with a GROUP BY statement when an array type column is part of the column list is not yet supported:
> CREATE TABLE test_group_by ( key INT, group INT, terms ARRAY<STRING>);
> SELECT key, terms, count(group) FROM test_group_by GROUP BY key, terms;
> ...
> "Hash code on complex types not supported yet."
> java.lang.RuntimeException: Error while closing operators
> at org.apache.hadoop.hive.ql.exec.ExecMapper.close(ExecMapper.java:232)
> at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:57)
> at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:356)
> at org.apache.hadoop.mapred.MapTask.run(MapTask.java:305)
> at org.apache.hadoop.mapred.Child.main(Child.java:170)
> Caused by: org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.RuntimeException: Hash code on complex types not supported yet.
> at org.apache.hadoop.hive.ql.exec.GroupByOperator.closeOp(GroupByOperator.java:799)
> at org.apache.hadoop.hive.ql.exec.Operator.close(Operator.java:462)
> at org.apache.hadoop.hive.ql.exec.Operator.close(Operator.java:470)
> at org.apache.hadoop.hive.ql.exec.Operator.close(Operator.java:470)
> at org.apache.hadoop.hive.ql.exec.Operator.close(Operator.java:470)
> at org.apache.hadoop.hive.ql.exec.ExecMapper.close(ExecMapper.java:211)
> ... 4 more
> Caused by: java.lang.RuntimeException: Hash code on complex types not supported yet.
> at org.apache.hadoop.hive.serde2.objectinspector.ObjectInspectorUtils.hashCode(ObjectInspectorUtils.java:348)
> at org.apache.hadoop.hive.ql.exec.ReduceSinkOperator.processOp(ReduceSinkOperator.java:187)
> at org.apache.hadoop.hive.ql.exec.Operator.process(Operator.java:386)
> at org.apache.hadoop.hive.ql.exec.Operator.forward(Operator.java:598)
> at org.apache.hadoop.hive.ql.exec.GroupByOperator.forward(GroupByOperator.java:746)
> at org.apache.hadoop.hive.ql.exec.GroupByOperator.closeOp(GroupByOperator.java:780)
> ... 9 more
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira