You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by st...@apache.org on 2009/10/15 01:13:19 UTC
svn commit: r825334 - in /hadoop/hbase/trunk/src:
java/org/apache/hadoop/hbase/regionserver/
test/org/apache/hadoop/hbase/filter/
test/org/apache/hadoop/hbase/regionserver/
Author: stack
Date: Wed Oct 14 23:13:18 2009
New Revision: 825334
URL: http://svn.apache.org/viewvc?rev=825334&view=rev
Log:
HBASE-1906 fixup for broken build
Modified:
hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/regionserver/HRegion.java
hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java
hadoop/hbase/trunk/src/test/org/apache/hadoop/hbase/filter/TestFilter.java
hadoop/hbase/trunk/src/test/org/apache/hadoop/hbase/regionserver/TestScanner.java
Modified: hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/regionserver/HRegion.java
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/regionserver/HRegion.java?rev=825334&r1=825333&r2=825334&view=diff
==============================================================================
--- hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/regionserver/HRegion.java (original)
+++ hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/regionserver/HRegion.java Wed Oct 14 23:13:18 2009
@@ -1751,8 +1751,7 @@
boolean samerow = Bytes.equals(currentRow, row);
if (samerow && filterCurrentRow) {
// Filter all columns until row changes
- this.storeHeap.next(this.results);
- this.results.clear();
+ readAndDumpCurrentResult();
continue;
}
if (!samerow) {
@@ -1769,14 +1768,21 @@
}
// See if current row should be filtered based on row key
if (this.filter != null && this.filter.filterRowKey(row, 0, row.length)) {
+ readAndDumpCurrentResult();
resetFilters();
filterCurrentRow = true;
currentRow = row;
+ continue;
}
this.storeHeap.next(results);
}
}
+ private void readAndDumpCurrentResult() throws IOException {
+ this.storeHeap.next(this.results);
+ this.results.clear();
+ }
+
/*
* Do we have results to return or should we continue. Call when we get to
* the end of a row. Does house cleaning -- clearing results and resetting
@@ -1787,7 +1793,7 @@
if (this.results.isEmpty() ||
this.filter != null && this.filter.filterRow()) {
// Make sure results is empty, reset filters
- results.clear();
+ this.results.clear();
resetFilters();
return false;
}
Modified: hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java?rev=825334&r1=825333&r2=825334&view=diff
==============================================================================
--- hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java (original)
+++ hadoop/hbase/trunk/src/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java Wed Oct 14 23:13:18 2009
@@ -1883,10 +1883,10 @@
// Collect values to be returned here
List<KeyValue> values = new ArrayList<KeyValue>();
boolean moreRows = s.next(values);
- if(!values.isEmpty()) {
+ if (!values.isEmpty()) {
results.add(new Result(values));
}
- if(!moreRows) {
+ if (!moreRows) {
break;
}
}
Modified: hadoop/hbase/trunk/src/test/org/apache/hadoop/hbase/filter/TestFilter.java
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/src/test/org/apache/hadoop/hbase/filter/TestFilter.java?rev=825334&r1=825333&r2=825334&view=diff
==============================================================================
--- hadoop/hbase/trunk/src/test/org/apache/hadoop/hbase/filter/TestFilter.java (original)
+++ hadoop/hbase/trunk/src/test/org/apache/hadoop/hbase/filter/TestFilter.java Wed Oct 14 23:13:18 2009
@@ -145,7 +145,6 @@
}
public void testNoFilter() throws Exception {
-
// No filter
long expectedRows = this.numRows;
long expectedKeys = this.colsPerRow;
@@ -161,17 +160,12 @@
}
public void testPrefixFilter() throws Exception {
-
// Grab rows from group one (half of total)
-
long expectedRows = this.numRows / 2;
long expectedKeys = this.colsPerRow;
-
Scan s = new Scan();
s.setFilter(new PrefixFilter(Bytes.toBytes("testRowOne")));
-
verifyScan(s, expectedRows, expectedKeys);
-
}
public void testPageFilter() throws Exception {
@@ -931,6 +925,7 @@
Arrays.sort(results.toArray(new KeyValue[results.size()]),
KeyValue.COMPARATOR);
LOG.info("counter=" + i + ", " + results);
+ if (results.isEmpty()) break;
assertTrue("Scanned too many rows! Only expected " + expectedRows +
" total but already scanned " + (i+1), expectedRows > i);
assertEquals("Expected " + expectedKeys + " keys per row but " +
Modified: hadoop/hbase/trunk/src/test/org/apache/hadoop/hbase/regionserver/TestScanner.java
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/src/test/org/apache/hadoop/hbase/regionserver/TestScanner.java?rev=825334&r1=825333&r2=825334&view=diff
==============================================================================
--- hadoop/hbase/trunk/src/test/org/apache/hadoop/hbase/regionserver/TestScanner.java (original)
+++ hadoop/hbase/trunk/src/test/org/apache/hadoop/hbase/regionserver/TestScanner.java Wed Oct 14 23:13:18 2009
@@ -180,7 +180,6 @@
Filter newFilter = new PrefixFilter(prefix);
Scan scan = new Scan();
scan.setFilter(newFilter);
- scan.setStartRow(prefix);
rowPrefixFilter(scan);
byte[] stopRow = Bytes.toBytes("bbc");