hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Maryann Xue (Commented) (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-5821) Incorrect handling of null value in Coprocessor aggregation function min()
Date Thu, 19 Apr 2012 07:01:46 GMT

    [ https://issues.apache.org/jira/browse/HBASE-5821?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13257307#comment-13257307
] 

Maryann Xue commented on HBASE-5821:
------------------------------------

Himanshu, it seems impossible to solve this problem through ColumnInterpreter. the semantics
of min() and max() here is to discard null value whenever a non-null value appears; while
the compare() is put the null value at a definite end -- either the lowest or the highest.
Currently, null is treated as the smallest value, so this works for max(), but for min(),
null would be the minimum value instead of being discarded.
                
> 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, 0.96.0, 0.94.1
>
>         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: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message