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

Greg Wittel commented on HBASE-3599:
------------------------------------

Sample Test:

{code}
@Test
public void testResultUnsotedInput() {
    List<KeyValue> inlist = new ArrayList<KeyValue>();
    byte[] rk = Bytes.toBytes("rowkey");
    byte[] fam = Bytes.toBytes("myfamily");
    inlist.add(
        new KeyValue(rk, fam, Bytes.toBytes("key1"), Bytes.toBytes(1))
    );
    inlist.add(
        new KeyValue(rk, fam, Bytes.toBytes("key2"), Bytes.toBytes(1))
    );
    inlist.add(
        new KeyValue(rk, fam, Bytes.toBytes("key103"), Bytes.toBytes(1))
    );
    //Collections.sort(inlist, KeyValue.COMPARATOR);
    Result res = new Result(inlist);
    assertTrue(res.containsColumn(fam, Bytes.toBytes("key103")));
}
{code}

> Result constructor assumes input is already sorted
> --------------------------------------------------
>
>                 Key: HBASE-3599
>                 URL: https://issues.apache.org/jira/browse/HBASE-3599
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 0.90.0
>            Reporter: Greg Wittel
>            Priority: Minor
>
> The Result(List<KeyValue>) and Result(KeyValue[]) constructor assume that the 
> input is already sorted (HBASE-3073, HBASE-2753).  This works for normal use 
> cases, but not for hand constructed Result objects (e.g. unit tests).
> I encountered this when upgrading to 0.90 that some unit tests now failed due 
> to this.  One fix is to add some documentation on the constructors that says 
> the input MUST be sorted.  The other would be to explicitly sort the items 
> (not so desirable).

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to