[
https://issues.apache.org/jira/browse/HBASE-5821?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13727590#comment-13727590
]
asha koshti commented on HBASE-5821:
------------------------------------
Even i am facing the issue in using coprocessor for doing sum.
AggregationClient aClient = new AggregationClient(conf);
final ColumnInterpreter<Long, Long> ci = new LongColumnInterpreter();
Scan scan = new Scan();
scan.addColumn(Bytes.toBytes("info"),Bytes.toBytes("hits"));
long sum = aClient.sum(Bytes.toBytes("demo"), ci, scan);
> Incorrect handling of null value in Coprocessor aggregation function min()
> --------------------------------------------------------------------------
>
> Key: HBASE-5821
> URL: https://issues.apache.org/jira/browse/HBASE-5821
> Project: HBase
> Issue Type: Bug
> Components: Coprocessors
> Affects Versions: 0.92.1
> Reporter: Maryann Xue
> Assignee: Maryann Xue
> Fix For: 0.92.2
>
> Attachments: HBASE-5821.patch
>
>
> Both in AggregateImplementation and AggregationClient, the evaluation of the
> current minimum value is like:
> min = (min == null || ci.compare(result, min) < 0) ? result : min;
> The LongColumnInterpreter takes null value is treated as the least value,
> while the above expression takes min as the greater value when it is null.
> Thus, the real minimum value gets discarded if a null value comes later.
> max() could also be wrong if a different ColumnInterpreter other than
> LongColumnInterpreter treats null value differently (as the greatest).
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira