You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by ra...@apache.org on 2010/10/02 01:48:10 UTC
svn commit: r1003710 - in /hbase/trunk: CHANGES.txt
src/main/java/org/apache/hadoop/hbase/client/Result.java
Author: rawson
Date: Fri Oct 1 23:48:10 2010
New Revision: 1003710
URL: http://svn.apache.org/viewvc?rev=1003710&view=rev
Log:
HBASE-2753 Remove sorted() methods from Result now that Gets are Scans
Modified:
hbase/trunk/CHANGES.txt
hbase/trunk/src/main/java/org/apache/hadoop/hbase/client/Result.java
Modified: hbase/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/hbase/trunk/CHANGES.txt?rev=1003710&r1=1003709&r2=1003710&view=diff
==============================================================================
--- hbase/trunk/CHANGES.txt (original)
+++ hbase/trunk/CHANGES.txt Fri Oct 1 23:48:10 2010
@@ -564,6 +564,7 @@ Release 0.21.0 - Unreleased
in transition
HBASE-3064 Long sleeping in HConnectionManager after thread is interrupted
(Bruno Dumon via Stack)
+ HBASE-2753 Remove sorted() methods from Result now that Gets are Scans
IMPROVEMENTS
HBASE-1760 Cleanup TODOs in HTable
Modified: hbase/trunk/src/main/java/org/apache/hadoop/hbase/client/Result.java
URL: http://svn.apache.org/viewvc/hbase/trunk/src/main/java/org/apache/hadoop/hbase/client/Result.java?rev=1003710&r1=1003709&r2=1003710&view=diff
==============================================================================
--- hbase/trunk/src/main/java/org/apache/hadoop/hbase/client/Result.java (original)
+++ hbase/trunk/src/main/java/org/apache/hadoop/hbase/client/Result.java Fri Oct 1 23:48:10 2010
@@ -20,6 +20,7 @@
package org.apache.hadoop.hbase.client;
+import com.google.common.collect.Ordering;
import org.apache.hadoop.hbase.KeyValue;
import org.apache.hadoop.hbase.KeyValue.SplitKeyValue;
import org.apache.hadoop.hbase.io.ImmutableBytesWritable;
@@ -149,12 +150,18 @@ public class Result implements Writable
* @return sorted array of KeyValues
*/
public KeyValue[] sorted() {
- if (isEmpty()) {
+ if (isEmpty()) { // used for side effect!
return null;
}
- Arrays.sort(kvs, KeyValue.COMPARATOR);
+ if (!sorted) {
+ assert Ordering.from(KeyValue.COMPARATOR).isOrdered(Arrays.asList(kvs));
+
+ Arrays.sort(kvs, KeyValue.COMPARATOR);
+ sorted = true;
+ }
return kvs;
}
+ private boolean sorted = false;
/**
* Map of families to all versions of its qualifiers and values.