Index: hbase-server/src/main/java/org/apache/hadoop/hbase/client/ClientScanner.java
===================================================================
--- hbase-server/src/main/java/org/apache/hadoop/hbase/client/ClientScanner.java (revision 1368026)
+++ hbase-server/src/main/java/org/apache/hadoop/hbase/client/ClientScanner.java (working copy)
@@ -363,6 +363,27 @@
}
return resultSets.toArray(new Result[resultSets.size()]);
}
+
+ /**
+ * Get nbRows rows from start row number.
+ * [start, start + nbRows - 1]
+ * How many RPCs are made is determined by the {@link Scan#setCaching(int)}
+ * setting (or hbase.client.scanner.caching in hbase-site.xml).
+ * @param start row number, between one and Integer.MAX_VALUE
+ * @param nbRows number of rows to return
+ * @return Between zero and nbRows RowResults.
+ * Scan is done if returned array is of zero-length (We never return null).
+ * @throws IOException
+ */
+ public Result[] limit(int start, int nbRows){
+ ArrayList resultList = new ArrayList(nbRows);
+ for(int i = 1;i < start && next() != null; i++);
+ Result next = null;
+ for(int i = 0; i < nbRows && (next = next()) != null; i++){
+ resultList.add(next);
+ }
+ return resultList.toArray(new Result[resultList.size()]);
+ }
public void close() {
if (callable != null) {