[ https://issues.apache.org/jira/browse/HIVE-1376?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ning Zhang updated HIVE-1376: ----------------------------- Attachment: HIVE-1376.2.patch The previous patch failed on several test, particularly count(*) queries. Attaching a new patch for percentile only and will update a patch for HIVE-1674 separately. > Simple UDAFs with more than 1 parameter crash on empty row query > ----------------------------------------------------------------- > > Key: HIVE-1376 > URL: https://issues.apache.org/jira/browse/HIVE-1376 > Project: Hadoop Hive > Issue Type: Bug > Components: Query Processor > Affects Versions: 0.6.0 > Reporter: Mayank Lahiri > Assignee: Ning Zhang > Attachments: HIVE-1376.2.patch, HIVE-1376.patch > > > Simple UDAFs with more than 1 parameter crash when the query returns no rows. > Currently, this only seems to affect the percentile() UDAF where the second > parameter is the percentile to be computed (of type double). I've also > verified the bug by adding a dummy parameter to ExampleMin in contrib. > On an empty query, Hive seems to be trying to resolve an iterate() method > with signature {null,null} instead of {null,double}. You can reproduce this > bug using: > CREATE TABLE pct_test ( val INT ); > SELECT percentile(val, 0.5) FROM pct_test; > which produces a lot of errors like: > Caused by: org.apache.hadoop.hive.ql.metadata.HiveException: Unable to > execute method public boolean > org.apache.hadoop.hive.ql.udf.UDAFPercentile$PercentileLongEvaluator.iterate(org.apache.hadoop.io.LongWritable,double) > on object > org.apache.hadoop.hive.ql.udf.udafpercentile$percentilelongevalua...@11d13272 > of class org.apache.hadoop.hive.ql.udf.UDAFPercentile$PercentileLongEvaluator > with arguments {null, null} of size 2 -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.