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 2010/05/07 21:26:51 UTC
svn commit: r942186 [17/18] - in /hadoop/hbase/trunk: ./
contrib/stargate/core/src/test/java/org/apache/hadoop/hbase/stargate/
core/src/main/java/org/apache/hadoop/hbase/
core/src/main/java/org/apache/hadoop/hbase/client/
core/src/main/java/org/apache/...
Modified: hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java?rev=942186&r1=942185&r2=942186&view=diff
==============================================================================
--- hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java (original)
+++ hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java Fri May 7 19:26:45 2010
@@ -51,7 +51,7 @@ import org.apache.hadoop.hbase.util.Byte
/**
* Basic stand-alone testing of HRegion.
- *
+ *
* A lot of the meta information for an HRegion now lives inside other
* HRegions or in the HBaseMaster, so only basic testing is possible.
*/
@@ -60,7 +60,7 @@ public class TestHRegion extends HBaseTe
HRegion region = null;
private final String DIR = "test/build/data/TestHRegion/";
-
+
private final int MAX_VERSIONS = 2;
// Test names
@@ -81,11 +81,11 @@ public class TestHRegion extends HBaseTe
}
//////////////////////////////////////////////////////////////////////////////
- // New tests that doesn't spin up a mini cluster but rather just test the
+ // New tests that doesn't spin up a mini cluster but rather just test the
// individual code pieces in the HRegion. Putting files locally in
// /tmp/testtable
//////////////////////////////////////////////////////////////////////////////
-
+
/**
* An involved filter test. Has multiple column families and deletes in mix.
@@ -235,7 +235,7 @@ public class TestHRegion extends HBaseTe
byte [] val1 = Bytes.toBytes("value1");
byte [] val2 = Bytes.toBytes("value2");
Integer lockId = null;
-
+
//Setting up region
String method = this.getName();
initHRegion(tableName, method, fam1);
@@ -258,7 +258,7 @@ public class TestHRegion extends HBaseTe
res = region.checkAndPut(row1, fam1, qf1, val1, put, lockId, true);
assertTrue(res);
}
-
+
public void testCheckAndPut_WithWrongValue() throws IOException{
byte [] tableName = Bytes.toBytes("testtable");
byte [] row1 = Bytes.toBytes("row1");
@@ -276,7 +276,7 @@ public class TestHRegion extends HBaseTe
Put put = new Put(row1);
put.add(fam1, qf1, val1);
region.put(put);
-
+
//checkAndPut with wrong value
boolean res = region.checkAndPut(row1, fam1, qf1, val2, put, lockId, true);
assertEquals(false, res);
@@ -298,12 +298,12 @@ public class TestHRegion extends HBaseTe
Put put = new Put(row1);
put.add(fam1, qf1, val1);
region.put(put);
-
+
//checkAndPut with correct value
boolean res = region.checkAndPut(row1, fam1, qf1, val1, put, lockId, true);
assertEquals(true, res);
}
-
+
public void testCheckAndPut_ThatPutWasWritten() throws IOException{
byte [] tableName = Bytes.toBytes("testtable");
byte [] row1 = Bytes.toBytes("row1");
@@ -315,7 +315,7 @@ public class TestHRegion extends HBaseTe
Integer lockId = null;
byte [][] families = {fam1, fam2};
-
+
//Setting up region
String method = this.getName();
initHRegion(tableName, method, families);
@@ -324,34 +324,34 @@ public class TestHRegion extends HBaseTe
Put put = new Put(row1);
put.add(fam1, qf1, val1);
region.put(put);
-
+
//Creating put to add
long ts = System.currentTimeMillis();
KeyValue kv = new KeyValue(row1, fam2, qf1, ts, KeyValue.Type.Put, val2);
put = new Put(row1);
put.add(kv);
-
+
//checkAndPut with wrong value
Store store = region.getStore(fam1);
store.memstore.kvset.size();
-
+
boolean res = region.checkAndPut(row1, fam1, qf1, val1, put, lockId, true);
assertEquals(true, res);
store.memstore.kvset.size();
-
+
Get get = new Get(row1);
get.addColumn(fam2, qf1);
KeyValue [] actual = region.get(get, null).raw();
-
+
KeyValue [] expected = {kv};
-
+
assertEquals(expected.length, actual.length);
for(int i=0; i<actual.length; i++) {
assertEquals(expected[i], actual[i]);
}
-
+
}
-
+
//////////////////////////////////////////////////////////////////////////////
// Delete tests
//////////////////////////////////////////////////////////////////////////////
@@ -383,8 +383,8 @@ public class TestHRegion extends HBaseTe
assertTrue("Family " +new String(family)+ " does not exist", false);
}
- //testing non existing family
- boolean ok = false;
+ //testing non existing family
+ boolean ok = false;
family = fam4;
try {
Map<byte[], List<KeyValue>> deleteMap = new HashMap<byte[], List<KeyValue>>();
@@ -447,12 +447,12 @@ public class TestHRegion extends HBaseTe
get = new Get(row);
result = region.get(get, null);
assertEquals(3, result.size());
-
+
// Now delete all... then test I can add stuff back
delete = new Delete(row);
region.delete(delete, null, false);
assertEquals(0, region.get(get, null).size());
- try {
+ try {
Thread.sleep(10);
} catch (InterruptedException e) {
e.printStackTrace();
@@ -461,7 +461,7 @@ public class TestHRegion extends HBaseTe
result = region.get(get, null);
assertEquals(1, result.size());
}
-
+
public void testDeleteRowWithFutureTs() throws IOException {
byte [] tableName = Bytes.toBytes("testtable");
byte [] fam = Bytes.toBytes("info");
@@ -486,7 +486,7 @@ public class TestHRegion extends HBaseTe
Get get = new Get(row).addColumn(fam, serverinfo);
Result result = region.get(get, null);
assertEquals(1, result.size());
-
+
// delete the future row
delete = new Delete(row,HConstants.LATEST_TIMESTAMP-3,null);
region.delete(delete, null, true);
@@ -557,7 +557,7 @@ public class TestHRegion extends HBaseTe
region.put(put);
Thread.sleep(10);
-
+
// now delete the value:
region.delete(delete, null, true);
@@ -593,19 +593,19 @@ public class TestHRegion extends HBaseTe
}
-
+
public void testDelete_CheckTimestampUpdated()
throws IOException {
byte [] row1 = Bytes.toBytes("row1");
byte [] col1 = Bytes.toBytes("col1");
byte [] col2 = Bytes.toBytes("col2");
byte [] col3 = Bytes.toBytes("col3");
-
+
//Setting up region
String method = this.getName();
initHRegion(tableName, method, fam1);
-
- //Building checkerList
+
+ //Building checkerList
List<KeyValue> kvs = new ArrayList<KeyValue>();
kvs.add(new KeyValue(row1, fam1, col1, null));
kvs.add(new KeyValue(row1, fam1, col2, null));
@@ -626,7 +626,7 @@ public class TestHRegion extends HBaseTe
now = kv.getTimestamp();
}
}
-
+
//////////////////////////////////////////////////////////////////////////////
// Get tests
//////////////////////////////////////////////////////////////////////////////
@@ -636,14 +636,14 @@ public class TestHRegion extends HBaseTe
byte [] fam1 = Bytes.toBytes("fam1");
byte [] fam2 = Bytes.toBytes("False");
byte [] col1 = Bytes.toBytes("col1");
-
+
//Setting up region
String method = this.getName();
initHRegion(tableName, method, fam1);
-
+
Get get = new Get(row1);
get.addColumn(fam2, col1);
-
+
//Test
try {
region.get(get, null);
@@ -663,11 +663,11 @@ public class TestHRegion extends HBaseTe
byte [] col3 = Bytes.toBytes("col3");
byte [] col4 = Bytes.toBytes("col4");
byte [] col5 = Bytes.toBytes("col5");
-
+
//Setting up region
String method = this.getName();
initHRegion(tableName, method, fam1);
-
+
//Add to memstore
Put put = new Put(row1);
put.add(fam1, col1, null);
@@ -710,17 +710,17 @@ public class TestHRegion extends HBaseTe
byte [] tableName = Bytes.toBytes("emptytable");
byte [] row = Bytes.toBytes("row");
byte [] fam = Bytes.toBytes("fam");
-
+
String method = this.getName();
initHRegion(tableName, method, fam);
-
+
Get get = new Get(row);
get.addFamily(fam);
Result r = region.get(get, null);
-
+
assertTrue(r.isEmpty());
}
-
+
//Test that checked if there was anything special when reading from the ROOT
//table. To be able to use this test you need to comment the part in
//HTableDescriptor that checks for '-' and '.'. You also need to remove the
@@ -734,7 +734,7 @@ public class TestHRegion extends HBaseTe
Put put = new Put(HConstants.EMPTY_START_ROW);
put.add(HConstants.CATALOG_FAMILY, HConstants.REGIONINFO_QUALIFIER, null);
region.put(put);
-
+
Get get = new Get(HConstants.EMPTY_START_ROW);
get.addColumn(HConstants.CATALOG_FAMILY, HConstants.REGIONINFO_QUALIFIER);
@@ -742,10 +742,10 @@ public class TestHRegion extends HBaseTe
KeyValue kv1 = new KeyValue(HConstants.EMPTY_START_ROW,
HConstants.CATALOG_FAMILY, HConstants.REGIONINFO_QUALIFIER);
KeyValue [] expected = {kv1};
-
+
//Test from memstore
Result res = region.get(get, null);
-
+
assertEquals(expected.length, res.size());
for(int i=0; i<res.size(); i++){
assertEquals(0,
@@ -756,13 +756,13 @@ public class TestHRegion extends HBaseTe
Bytes.compareTo(
expected[i].getQualifier(), res.raw()[i].getQualifier()));
}
-
+
//flush
region.flushcache();
-
+
//test2
res = region.get(get, null);
-
+
assertEquals(expected.length, res.size());
for(int i=0; i<res.size(); i++){
assertEquals(0,
@@ -773,14 +773,14 @@ public class TestHRegion extends HBaseTe
Bytes.compareTo(
expected[i].getQualifier(), res.raw()[i].getQualifier()));
}
-
+
//Scan
Scan scan = new Scan();
scan.addFamily(HConstants.CATALOG_FAMILY);
InternalScanner s = region.getScanner(scan);
List<KeyValue> result = new ArrayList<KeyValue>();
s.next(result);
-
+
assertEquals(expected.length, result.size());
for(int i=0; i<res.size(); i++){
assertEquals(0,
@@ -791,23 +791,23 @@ public class TestHRegion extends HBaseTe
Bytes.compareTo(
expected[i].getQualifier(), result.get(i).getQualifier()));
}
- }
-
+ }
+
//////////////////////////////////////////////////////////////////////////////
// Lock test
- //////////////////////////////////////////////////////////////////////////////
+ //////////////////////////////////////////////////////////////////////////////
public void testLocks() throws IOException{
byte [] tableName = Bytes.toBytes("testtable");
byte [][] families = {fam1, fam2, fam3};
-
+
HBaseConfiguration hc = initSplit();
//Setting up region
String method = this.getName();
initHRegion(tableName, method, hc, families);
-
+
final int threadCount = 10;
final int lockCount = 10;
-
+
List<Thread>threads = new ArrayList<Thread>(threadCount);
for (int i = 0; i < threadCount; i++) {
threads.add(new Thread(Integer.toString(i)) {
@@ -827,7 +827,7 @@ public class TestHRegion extends HBaseTe
}
LOG.debug(getName() + " set " +
Integer.toString(lockCount) + " locks");
-
+
// Abort outstanding locks.
for (int i = lockCount - 1; i >= 0; i--) {
region.releaseRowLock(lockids[i]);
@@ -838,12 +838,12 @@ public class TestHRegion extends HBaseTe
}
});
}
-
+
// Startup all our threads.
for (Thread t : threads) {
t.start();
}
-
+
// Now wait around till all are done.
for (Thread t: threads) {
while (t.isAlive()) {
@@ -856,19 +856,19 @@ public class TestHRegion extends HBaseTe
}
LOG.info("locks completed.");
}
-
+
//////////////////////////////////////////////////////////////////////////////
// Merge test
- //////////////////////////////////////////////////////////////////////////////
+ //////////////////////////////////////////////////////////////////////////////
public void testMerge() throws IOException {
byte [] tableName = Bytes.toBytes("testtable");
byte [][] families = {fam1, fam2, fam3};
-
+
HBaseConfiguration hc = initSplit();
//Setting up region
String method = this.getName();
initHRegion(tableName, method, hc, families);
-
+
try {
LOG.info("" + addContent(region, fam3));
region.flushcache();
@@ -923,7 +923,7 @@ public class TestHRegion extends HBaseTe
}
}
}
-
+
//////////////////////////////////////////////////////////////////////////////
// Scanner tests
//////////////////////////////////////////////////////////////////////////////
@@ -931,13 +931,13 @@ public class TestHRegion extends HBaseTe
byte [] tableName = Bytes.toBytes("testtable");
byte [] fam1 = Bytes.toBytes("fam1");
byte [] fam2 = Bytes.toBytes("fam2");
-
+
byte [][] families = {fam1, fam2};
-
+
//Setting up region
String method = this.getName();
initHRegion(tableName, method, families);
-
+
Scan scan = new Scan();
scan.addFamily(fam1);
scan.addFamily(fam2);
@@ -947,7 +947,7 @@ public class TestHRegion extends HBaseTe
assertTrue("Families could not be found in Region", false);
}
}
-
+
public void testGetScanner_WithNotOkFamilies() throws IOException {
byte [] tableName = Bytes.toBytes("testtable");
byte [] fam1 = Bytes.toBytes("fam1");
@@ -969,7 +969,7 @@ public class TestHRegion extends HBaseTe
}
assertTrue("Families could not be found in Region", ok);
}
-
+
public void testGetScanner_WithNoFamilies() throws IOException {
byte [] tableName = Bytes.toBytes("testtable");
byte [] row1 = Bytes.toBytes("row1");
@@ -977,13 +977,13 @@ public class TestHRegion extends HBaseTe
byte [] fam2 = Bytes.toBytes("fam2");
byte [] fam3 = Bytes.toBytes("fam3");
byte [] fam4 = Bytes.toBytes("fam4");
-
+
byte [][] families = {fam1, fam2, fam3, fam4};
-
+
//Setting up region
String method = this.getName();
initHRegion(tableName, method, families);
-
+
//Putting data in Region
Put put = new Put(row1);
put.add(fam1, null, null);
@@ -991,21 +991,21 @@ public class TestHRegion extends HBaseTe
put.add(fam3, null, null);
put.add(fam4, null, null);
region.put(put);
-
+
Scan scan = null;
InternalScanner is = null;
-
- //Testing to see how many scanners that is produced by getScanner, starting
+
+ //Testing to see how many scanners that is produced by getScanner, starting
//with known number, 2 - current = 1
scan = new Scan();
scan.addFamily(fam2);
scan.addFamily(fam4);
is = region.getScanner(scan);
assertEquals(1, ((RegionScanner)is).getStoreHeap().getHeap().size());
-
+
scan = new Scan();
is = region.getScanner(scan);
- assertEquals(families.length -1,
+ assertEquals(families.length -1,
((RegionScanner)is).getStoreHeap().getHeap().size());
}
@@ -1017,14 +1017,14 @@ public class TestHRegion extends HBaseTe
byte [] fam2 = Bytes.toBytes("fam2");
byte [] fam3 = Bytes.toBytes("fam3");
byte [] fam4 = Bytes.toBytes("fam4");
-
+
byte [][] families = {fam1, fam2, fam3, fam4};
long ts = System.currentTimeMillis();
-
+
//Setting up region
String method = this.getName();
initHRegion(tableName, method, families);
-
+
//Putting data in Region
Put put = null;
put = new Put(row1);
@@ -1040,39 +1040,39 @@ public class TestHRegion extends HBaseTe
put.add(fam3, null, ts, null);
put.add(fam4, null, ts, null);
region.put(put);
-
+
Scan scan = new Scan();
scan.addFamily(fam2);
scan.addFamily(fam4);
InternalScanner is = region.getScanner(scan);
-
+
List<KeyValue> res = null;
-
+
//Result 1
List<KeyValue> expected1 = new ArrayList<KeyValue>();
expected1.add(new KeyValue(row1, fam2, null, ts, KeyValue.Type.Put, null));
expected1.add(new KeyValue(row1, fam4, null, ts, KeyValue.Type.Put, null));
-
+
res = new ArrayList<KeyValue>();
is.next(res);
for(int i=0; i<res.size(); i++) {
assertEquals(expected1.get(i), res.get(i));
}
-
+
//Result 2
List<KeyValue> expected2 = new ArrayList<KeyValue>();
expected2.add(new KeyValue(row2, fam2, null, ts, KeyValue.Type.Put, null));
expected2.add(new KeyValue(row2, fam4, null, ts, KeyValue.Type.Put, null));
-
+
res = new ArrayList<KeyValue>();
is.next(res);
for(int i=0; i<res.size(); i++) {
assertEquals(expected2.get(i), res.get(i));
}
-
+
}
-
- public void testScanner_ExplicitColumns_FromMemStore_EnforceVersions()
+
+ public void testScanner_ExplicitColumns_FromMemStore_EnforceVersions()
throws IOException {
byte [] tableName = Bytes.toBytes("testtable");
byte [] row1 = Bytes.toBytes("row1");
@@ -1080,25 +1080,25 @@ public class TestHRegion extends HBaseTe
byte [] qf2 = Bytes.toBytes("qualifier2");
byte [] fam1 = Bytes.toBytes("fam1");
byte [][] families = {fam1};
-
+
long ts1 = System.currentTimeMillis();
long ts2 = ts1 + 1;
long ts3 = ts1 + 2;
-
+
//Setting up region
String method = this.getName();
initHRegion(tableName, method, families);
-
+
//Putting data in Region
Put put = null;
KeyValue kv13 = new KeyValue(row1, fam1, qf1, ts3, KeyValue.Type.Put, null);
KeyValue kv12 = new KeyValue(row1, fam1, qf1, ts2, KeyValue.Type.Put, null);
KeyValue kv11 = new KeyValue(row1, fam1, qf1, ts1, KeyValue.Type.Put, null);
-
+
KeyValue kv23 = new KeyValue(row1, fam1, qf2, ts3, KeyValue.Type.Put, null);
KeyValue kv22 = new KeyValue(row1, fam1, qf2, ts2, KeyValue.Type.Put, null);
KeyValue kv21 = new KeyValue(row1, fam1, qf2, ts1, KeyValue.Type.Put, null);
-
+
put = new Put(row1);
put.add(kv13);
put.add(kv12);
@@ -1107,28 +1107,28 @@ public class TestHRegion extends HBaseTe
put.add(kv22);
put.add(kv21);
region.put(put);
-
+
//Expected
List<KeyValue> expected = new ArrayList<KeyValue>();
expected.add(kv13);
expected.add(kv12);
-
+
Scan scan = new Scan(row1);
scan.addColumn(fam1, qf1);
scan.setMaxVersions(MAX_VERSIONS);
List<KeyValue> actual = new ArrayList<KeyValue>();
InternalScanner scanner = region.getScanner(scan);
-
+
boolean hasNext = scanner.next(actual);
assertEquals(false, hasNext);
-
+
//Verify result
for(int i=0; i<expected.size(); i++) {
assertEquals(expected.get(i), actual.get(i));
}
}
-
- public void testScanner_ExplicitColumns_FromFilesOnly_EnforceVersions()
+
+ public void testScanner_ExplicitColumns_FromFilesOnly_EnforceVersions()
throws IOException{
byte [] tableName = Bytes.toBytes("testtable");
byte [] row1 = Bytes.toBytes("row1");
@@ -1136,25 +1136,25 @@ public class TestHRegion extends HBaseTe
byte [] qf2 = Bytes.toBytes("qualifier2");
byte [] fam1 = Bytes.toBytes("fam1");
byte [][] families = {fam1};
-
+
long ts1 = 1; //System.currentTimeMillis();
long ts2 = ts1 + 1;
long ts3 = ts1 + 2;
-
+
//Setting up region
String method = this.getName();
initHRegion(tableName, method, families);
-
+
//Putting data in Region
Put put = null;
KeyValue kv13 = new KeyValue(row1, fam1, qf1, ts3, KeyValue.Type.Put, null);
KeyValue kv12 = new KeyValue(row1, fam1, qf1, ts2, KeyValue.Type.Put, null);
KeyValue kv11 = new KeyValue(row1, fam1, qf1, ts1, KeyValue.Type.Put, null);
-
+
KeyValue kv23 = new KeyValue(row1, fam1, qf2, ts3, KeyValue.Type.Put, null);
KeyValue kv22 = new KeyValue(row1, fam1, qf2, ts2, KeyValue.Type.Put, null);
KeyValue kv21 = new KeyValue(row1, fam1, qf2, ts1, KeyValue.Type.Put, null);
-
+
put = new Put(row1);
put.add(kv13);
put.add(kv12);
@@ -1164,30 +1164,30 @@ public class TestHRegion extends HBaseTe
put.add(kv21);
region.put(put);
region.flushcache();
-
+
//Expected
List<KeyValue> expected = new ArrayList<KeyValue>();
expected.add(kv13);
expected.add(kv12);
expected.add(kv23);
expected.add(kv22);
-
+
Scan scan = new Scan(row1);
scan.addColumn(fam1, qf1);
scan.addColumn(fam1, qf2);
scan.setMaxVersions(MAX_VERSIONS);
List<KeyValue> actual = new ArrayList<KeyValue>();
InternalScanner scanner = region.getScanner(scan);
-
+
boolean hasNext = scanner.next(actual);
assertEquals(false, hasNext);
-
+
//Verify result
for(int i=0; i<expected.size(); i++) {
assertEquals(expected.get(i), actual.get(i));
}
}
-
+
public void testScanner_ExplicitColumns_FromMemStoreAndFiles_EnforceVersions()
throws IOException {
byte [] tableName = Bytes.toBytes("testtable");
@@ -1196,51 +1196,51 @@ public class TestHRegion extends HBaseTe
byte [][] families = {fam1};
byte [] qf1 = Bytes.toBytes("qualifier1");
byte [] qf2 = Bytes.toBytes("qualifier2");
-
+
long ts1 = 1;
long ts2 = ts1 + 1;
long ts3 = ts1 + 2;
long ts4 = ts1 + 3;
-
+
//Setting up region
String method = this.getName();
initHRegion(tableName, method, families);
-
+
//Putting data in Region
KeyValue kv14 = new KeyValue(row1, fam1, qf1, ts4, KeyValue.Type.Put, null);
KeyValue kv13 = new KeyValue(row1, fam1, qf1, ts3, KeyValue.Type.Put, null);
KeyValue kv12 = new KeyValue(row1, fam1, qf1, ts2, KeyValue.Type.Put, null);
KeyValue kv11 = new KeyValue(row1, fam1, qf1, ts1, KeyValue.Type.Put, null);
-
+
KeyValue kv24 = new KeyValue(row1, fam1, qf2, ts4, KeyValue.Type.Put, null);
KeyValue kv23 = new KeyValue(row1, fam1, qf2, ts3, KeyValue.Type.Put, null);
KeyValue kv22 = new KeyValue(row1, fam1, qf2, ts2, KeyValue.Type.Put, null);
KeyValue kv21 = new KeyValue(row1, fam1, qf2, ts1, KeyValue.Type.Put, null);
-
+
Put put = null;
put = new Put(row1);
put.add(kv14);
put.add(kv24);
region.put(put);
region.flushcache();
-
+
put = new Put(row1);
put.add(kv23);
put.add(kv13);
region.put(put);
region.flushcache();
-
+
put = new Put(row1);
put.add(kv22);
put.add(kv12);
region.put(put);
region.flushcache();
-
+
put = new Put(row1);
put.add(kv21);
put.add(kv11);
region.put(put);
-
+
//Expected
List<KeyValue> expected = new ArrayList<KeyValue>();
expected.add(kv14);
@@ -1249,7 +1249,7 @@ public class TestHRegion extends HBaseTe
expected.add(kv24);
expected.add(kv23);
expected.add(kv22);
-
+
Scan scan = new Scan(row1);
scan.addColumn(fam1, qf1);
scan.addColumn(fam1, qf2);
@@ -1257,17 +1257,17 @@ public class TestHRegion extends HBaseTe
scan.setMaxVersions(versions);
List<KeyValue> actual = new ArrayList<KeyValue>();
InternalScanner scanner = region.getScanner(scan);
-
+
boolean hasNext = scanner.next(actual);
assertEquals(false, hasNext);
-
+
//Verify result
for(int i=0; i<expected.size(); i++) {
assertEquals(expected.get(i), actual.get(i));
}
}
-
- public void testScanner_Wildcard_FromMemStore_EnforceVersions()
+
+ public void testScanner_Wildcard_FromMemStore_EnforceVersions()
throws IOException {
byte [] tableName = Bytes.toBytes("testtable");
byte [] row1 = Bytes.toBytes("row1");
@@ -1275,25 +1275,25 @@ public class TestHRegion extends HBaseTe
byte [] qf2 = Bytes.toBytes("qualifier2");
byte [] fam1 = Bytes.toBytes("fam1");
byte [][] families = {fam1};
-
+
long ts1 = System.currentTimeMillis();
long ts2 = ts1 + 1;
long ts3 = ts1 + 2;
-
+
//Setting up region
String method = this.getName();
initHRegion(tableName, method, families);
-
+
//Putting data in Region
Put put = null;
KeyValue kv13 = new KeyValue(row1, fam1, qf1, ts3, KeyValue.Type.Put, null);
KeyValue kv12 = new KeyValue(row1, fam1, qf1, ts2, KeyValue.Type.Put, null);
KeyValue kv11 = new KeyValue(row1, fam1, qf1, ts1, KeyValue.Type.Put, null);
-
+
KeyValue kv23 = new KeyValue(row1, fam1, qf2, ts3, KeyValue.Type.Put, null);
KeyValue kv22 = new KeyValue(row1, fam1, qf2, ts2, KeyValue.Type.Put, null);
KeyValue kv21 = new KeyValue(row1, fam1, qf2, ts1, KeyValue.Type.Put, null);
-
+
put = new Put(row1);
put.add(kv13);
put.add(kv12);
@@ -1302,30 +1302,30 @@ public class TestHRegion extends HBaseTe
put.add(kv22);
put.add(kv21);
region.put(put);
-
+
//Expected
List<KeyValue> expected = new ArrayList<KeyValue>();
expected.add(kv13);
expected.add(kv12);
expected.add(kv23);
expected.add(kv22);
-
+
Scan scan = new Scan(row1);
scan.addFamily(fam1);
scan.setMaxVersions(MAX_VERSIONS);
List<KeyValue> actual = new ArrayList<KeyValue>();
InternalScanner scanner = region.getScanner(scan);
-
+
boolean hasNext = scanner.next(actual);
assertEquals(false, hasNext);
-
+
//Verify result
for(int i=0; i<expected.size(); i++) {
assertEquals(expected.get(i), actual.get(i));
}
}
-
- public void testScanner_Wildcard_FromFilesOnly_EnforceVersions()
+
+ public void testScanner_Wildcard_FromFilesOnly_EnforceVersions()
throws IOException{
byte [] tableName = Bytes.toBytes("testtable");
byte [] row1 = Bytes.toBytes("row1");
@@ -1336,21 +1336,21 @@ public class TestHRegion extends HBaseTe
long ts1 = 1; //System.currentTimeMillis();
long ts2 = ts1 + 1;
long ts3 = ts1 + 2;
-
+
//Setting up region
String method = this.getName();
initHRegion(tableName, method, fam1);
-
+
//Putting data in Region
Put put = null;
KeyValue kv13 = new KeyValue(row1, fam1, qf1, ts3, KeyValue.Type.Put, null);
KeyValue kv12 = new KeyValue(row1, fam1, qf1, ts2, KeyValue.Type.Put, null);
KeyValue kv11 = new KeyValue(row1, fam1, qf1, ts1, KeyValue.Type.Put, null);
-
+
KeyValue kv23 = new KeyValue(row1, fam1, qf2, ts3, KeyValue.Type.Put, null);
KeyValue kv22 = new KeyValue(row1, fam1, qf2, ts2, KeyValue.Type.Put, null);
KeyValue kv21 = new KeyValue(row1, fam1, qf2, ts1, KeyValue.Type.Put, null);
-
+
put = new Put(row1);
put.add(kv13);
put.add(kv12);
@@ -1360,23 +1360,23 @@ public class TestHRegion extends HBaseTe
put.add(kv21);
region.put(put);
region.flushcache();
-
+
//Expected
List<KeyValue> expected = new ArrayList<KeyValue>();
expected.add(kv13);
expected.add(kv12);
expected.add(kv23);
expected.add(kv22);
-
+
Scan scan = new Scan(row1);
scan.addFamily(fam1);
scan.setMaxVersions(MAX_VERSIONS);
List<KeyValue> actual = new ArrayList<KeyValue>();
InternalScanner scanner = region.getScanner(scan);
-
+
boolean hasNext = scanner.next(actual);
assertEquals(false, hasNext);
-
+
//Verify result
for(int i=0; i<expected.size(); i++) {
assertEquals(expected.get(i), actual.get(i));
@@ -1439,7 +1439,7 @@ public class TestHRegion extends HBaseTe
region.put(put);
long result = region.incrementColumnValue(row, fam1, qual1, amount, true);
-
+
assertEquals(value+amount, result);
Store store = region.getStore(fam1);
@@ -1586,7 +1586,7 @@ public class TestHRegion extends HBaseTe
}
-
+
public void testScanner_Wildcard_FromMemStoreAndFiles_EnforceVersions()
throws IOException {
byte [] tableName = Bytes.toBytes("testtable");
@@ -1594,51 +1594,51 @@ public class TestHRegion extends HBaseTe
byte [] fam1 = Bytes.toBytes("fam1");
byte [] qf1 = Bytes.toBytes("qualifier1");
byte [] qf2 = Bytes.toBytes("quateslifier2");
-
+
long ts1 = 1;
long ts2 = ts1 + 1;
long ts3 = ts1 + 2;
long ts4 = ts1 + 3;
-
+
//Setting up region
String method = this.getName();
initHRegion(tableName, method, fam1);
-
+
//Putting data in Region
KeyValue kv14 = new KeyValue(row1, fam1, qf1, ts4, KeyValue.Type.Put, null);
KeyValue kv13 = new KeyValue(row1, fam1, qf1, ts3, KeyValue.Type.Put, null);
KeyValue kv12 = new KeyValue(row1, fam1, qf1, ts2, KeyValue.Type.Put, null);
KeyValue kv11 = new KeyValue(row1, fam1, qf1, ts1, KeyValue.Type.Put, null);
-
+
KeyValue kv24 = new KeyValue(row1, fam1, qf2, ts4, KeyValue.Type.Put, null);
KeyValue kv23 = new KeyValue(row1, fam1, qf2, ts3, KeyValue.Type.Put, null);
KeyValue kv22 = new KeyValue(row1, fam1, qf2, ts2, KeyValue.Type.Put, null);
KeyValue kv21 = new KeyValue(row1, fam1, qf2, ts1, KeyValue.Type.Put, null);
-
+
Put put = null;
put = new Put(row1);
put.add(kv14);
put.add(kv24);
region.put(put);
region.flushcache();
-
+
put = new Put(row1);
put.add(kv23);
put.add(kv13);
region.put(put);
region.flushcache();
-
+
put = new Put(row1);
put.add(kv22);
put.add(kv12);
region.put(put);
region.flushcache();
-
+
put = new Put(row1);
put.add(kv21);
put.add(kv11);
region.put(put);
-
+
//Expected
List<KeyValue> expected = new ArrayList<KeyValue>();
expected.add(kv14);
@@ -1647,22 +1647,22 @@ public class TestHRegion extends HBaseTe
expected.add(kv24);
expected.add(kv23);
expected.add(kv22);
-
+
Scan scan = new Scan(row1);
int versions = 3;
scan.setMaxVersions(versions);
List<KeyValue> actual = new ArrayList<KeyValue>();
InternalScanner scanner = region.getScanner(scan);
-
+
boolean hasNext = scanner.next(actual);
assertEquals(false, hasNext);
-
+
//Verify result
for(int i=0; i<expected.size(); i++) {
assertEquals(expected.get(i), actual.get(i));
}
}
-
+
//////////////////////////////////////////////////////////////////////////////
// Split test
//////////////////////////////////////////////////////////////////////////////
@@ -1673,12 +1673,12 @@ public class TestHRegion extends HBaseTe
public void testBasicSplit() throws Exception {
byte [] tableName = Bytes.toBytes("testtable");
byte [][] families = {fam1, fam2, fam3};
-
+
HBaseConfiguration hc = initSplit();
//Setting up region
String method = this.getName();
initHRegion(tableName, method, hc, families);
-
+
try {
LOG.info("" + addContent(region, fam3));
region.flushcache();
@@ -1757,14 +1757,14 @@ public class TestHRegion extends HBaseTe
}
}
}
-
+
public void testSplitRegion() throws IOException {
byte [] tableName = Bytes.toBytes("testtable");
byte [] qualifier = Bytes.toBytes("qualifier");
HBaseConfiguration hc = initSplit();
int numRows = 10;
byte [][] families = {fam1, fam3};
-
+
//Setting up region
String method = this.getName();
initHRegion(tableName, method, hc, families);
@@ -1775,22 +1775,22 @@ public class TestHRegion extends HBaseTe
int splitRow = startRow + numRows;
putData(splitRow, numRows, qualifier, families);
region.flushcache();
-
+
HRegion [] regions = null;
try {
regions = region.splitRegion(Bytes.toBytes("" + splitRow));
- //Opening the regions returned.
+ //Opening the regions returned.
for (int i = 0; i < regions.length; i++) {
regions[i] = openClosedRegion(regions[i]);
}
//Verifying that the region has been split
assertEquals(2, regions.length);
-
+
//Verifying that all data is still there and that data is in the right
//place
verifyData(regions[0], startRow, numRows, qualifier, families);
verifyData(regions[1], splitRow, numRows, qualifier, families);
-
+
} finally {
if (region != null) {
region.close();
@@ -1798,7 +1798,7 @@ public class TestHRegion extends HBaseTe
}
}
}
-
+
private void putData(int startRow, int numRows, byte [] qf,
byte [] ...families)
throws IOException {
@@ -1812,7 +1812,7 @@ public class TestHRegion extends HBaseTe
}
private void verifyData(HRegion newReg, int startRow, int numRows, byte [] qf,
- byte [] ... families)
+ byte [] ... families)
throws IOException {
for(int i=startRow; i<startRow + numRows; i++) {
byte [] row = Bytes.toBytes("" + i);
@@ -1842,7 +1842,7 @@ public class TestHRegion extends HBaseTe
assertTrue(Bytes.equals(k, tmp));
}
}
-
+
/*
* Assert first value in the passed region is <code>firstValue</code>.
* @param r
@@ -1877,7 +1877,7 @@ public class TestHRegion extends HBaseTe
s.close();
}
}
-
+
protected HRegion [] split(final HRegion r, final byte [] splitRow)
throws IOException {
// Assert can get mid key from passed region.
@@ -1886,17 +1886,17 @@ public class TestHRegion extends HBaseTe
assertEquals(regions.length, 2);
return regions;
}
-
+
private HBaseConfiguration initSplit() {
HBaseConfiguration conf = new HBaseConfiguration();
// Always compact if there is more than one store file.
conf.setInt("hbase.hstore.compactionThreshold", 2);
-
+
// Make lease timeout longer, lease checks less frequent
conf.setInt("hbase.master.lease.thread.wakefrequency", 5 * 1000);
-
+
conf.setInt(HConstants.HBASE_REGIONSERVER_LEASE_PERIOD_KEY, 10 * 1000);
-
+
// Increase the amount of time between client retries
conf.setLong("hbase.client.pause", 15 * 1000);
@@ -1904,14 +1904,14 @@ public class TestHRegion extends HBaseTe
// below. After adding all data, the first region is 1.3M
conf.setLong("hbase.hregion.max.filesize", 1024 * 128);
return conf;
- }
+ }
private void initHRegion (byte [] tableName, String callingMethod,
byte[] ... families)
throws IOException {
initHRegion(tableName, callingMethod, new HBaseConfiguration(), families);
}
-
+
private void initHRegion (byte [] tableName, String callingMethod,
HBaseConfiguration conf, byte [] ... families)
throws IOException{
@@ -1920,7 +1920,7 @@ public class TestHRegion extends HBaseTe
htd.addFamily(new HColumnDescriptor(family));
}
HRegionInfo info = new HRegionInfo(htd, null, null, false);
- Path path = new Path(DIR + callingMethod);
+ Path path = new Path(DIR + callingMethod);
region = HRegion.createHRegion(info, path, conf);
}
}
Modified: hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestKeyValueHeap.java
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestKeyValueHeap.java?rev=942186&r1=942185&r2=942186&view=diff
==============================================================================
--- hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestKeyValueHeap.java (original)
+++ hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestKeyValueHeap.java Fri May 7 19:26:45 2010
@@ -34,7 +34,7 @@ import org.apache.hadoop.hbase.util.Byte
public class TestKeyValueHeap extends HBaseTestCase
implements HConstants {
private static final boolean PRINT = false;
-
+
List<Scanner> scanners = new ArrayList<Scanner>();
private byte [] row1;
@@ -103,7 +103,7 @@ implements HConstants {
//Creating KeyValueHeap
KeyValueHeap kvh =
new KeyValueHeap(scanners.toArray(new Scanner[0]), KeyValue.COMPARATOR);
-
+
List<KeyValue> actual = new ArrayList<KeyValue>();
while(kvh.peek() != null){
actual.add(kvh.next());
@@ -117,20 +117,20 @@ implements HConstants {
"\nactual " +actual.get(i) +"\n");
}
}
-
+
//Check if result is sorted according to Comparator
for(int i=0; i<actual.size()-1; i++){
int ret = KeyValue.COMPARATOR.compare(actual.get(i), actual.get(i+1));
assertTrue(ret < 0);
}
-
+
}
public void testSeek(){
//Cases:
//1. Seek KeyValue that is not in scanner
//2. Check that smallest that is returned from a seek is correct
-
+
List<KeyValue> l1 = new ArrayList<KeyValue>();
l1.add(new KeyValue(row1, fam1, col5, data));
l1.add(new KeyValue(row2, fam1, col1, data));
@@ -152,17 +152,17 @@ implements HConstants {
List<KeyValue> expected = new ArrayList<KeyValue>();
expected.add(new KeyValue(row2, fam1, col1, data));
-
+
//Creating KeyValueHeap
KeyValueHeap kvh =
new KeyValueHeap(scanners.toArray(new Scanner[0]), KeyValue.COMPARATOR);
-
+
KeyValue seekKv = new KeyValue(row2, fam1, null, null);
kvh.seek(seekKv);
-
+
List<KeyValue> actual = new ArrayList<KeyValue>();
actual.add(kvh.peek());
-
+
assertEquals(expected.size(), actual.size());
for(int i=0; i<expected.size(); i++){
assertEquals(expected.get(i), actual.get(i));
@@ -171,12 +171,12 @@ implements HConstants {
"\nactual " +actual.get(i) +"\n");
}
}
-
+
}
public void testScannerLeak() {
// Test for unclosed scanners (HBASE-1927)
-
+
List<KeyValue> l1 = new ArrayList<KeyValue>();
l1.add(new KeyValue(row1, fam1, col5, data));
l1.add(new KeyValue(row2, fam1, col1, data));
@@ -195,21 +195,21 @@ implements HConstants {
l3.add(new KeyValue(row1, fam2, col2, data));
l3.add(new KeyValue(row2, fam1, col3, data));
scanners.add(new Scanner(l3));
-
+
List<KeyValue> l4 = new ArrayList<KeyValue>();
scanners.add(new Scanner(l4));
//Creating KeyValueHeap
KeyValueHeap kvh =
new KeyValueHeap(scanners.toArray(new Scanner[0]), KeyValue.COMPARATOR);
-
+
while(kvh.next() != null);
-
+
for(Scanner scanner : scanners) {
assertTrue(scanner.isClosed());
}
}
-
+
private static class Scanner implements KeyValueScanner {
private Iterator<KeyValue> iter;
private KeyValue current;
@@ -220,9 +220,9 @@ implements HConstants {
iter = list.iterator();
if(iter.hasNext()){
current = iter.next();
- }
+ }
}
-
+
public KeyValue peek() {
return current;
}
@@ -240,11 +240,11 @@ implements HConstants {
public void close(){
closed = true;
}
-
+
public boolean isClosed() {
return closed;
}
-
+
public boolean seek(KeyValue seekKv) {
while(iter.hasNext()){
KeyValue next = iter.next();
Modified: hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestMemStore.java
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestMemStore.java?rev=942186&r1=942185&r2=942186&view=diff
==============================================================================
--- hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestMemStore.java (original)
+++ hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestMemStore.java Fri May 7 19:26:45 2010
@@ -67,7 +67,7 @@ public class TestMemStore extends TestCa
found.getValue()));
}
- /**
+ /**
* Test memstore snapshot happening while scanning.
* @throws IOException
*/
@@ -150,7 +150,7 @@ public class TestMemStore extends TestCa
assertEquals(rowCount, count);
}
- /**
+ /**
* Test memstore snapshots
* @throws IOException
*/
@@ -176,12 +176,12 @@ public class TestMemStore extends TestCa
KeyValue key0 = new KeyValue(row, family, qf, stamps[0], values[0]);
KeyValue key1 = new KeyValue(row, family, qf, stamps[1], values[1]);
KeyValue key2 = new KeyValue(row, family, qf, stamps[2], values[2]);
-
+
m.add(key0);
m.add(key1);
m.add(key2);
-
- assertTrue("Expected memstore to hold 3 values, actually has " +
+
+ assertTrue("Expected memstore to hold 3 values, actually has " +
m.kvset.size(), m.kvset.size() == 3);
}
@@ -222,7 +222,7 @@ public class TestMemStore extends TestCa
//////////////////////////////////////////////////////////////////////////////
/** Test getNextRow from memstore
- * @throws InterruptedException
+ * @throws InterruptedException
*/
public void testGetNextRow() throws Exception {
addRows(this.memstore);
@@ -265,7 +265,7 @@ public class TestMemStore extends TestCa
}
}
}
-
+
public void testGet_Basic_Found() throws IOException {
byte [] row = Bytes.toBytes("testrow");
byte [] fam = Bytes.toBytes("testfamily");
@@ -273,7 +273,7 @@ public class TestMemStore extends TestCa
byte [] qf2 = Bytes.toBytes("testqualifier2");
byte [] qf3 = Bytes.toBytes("testqualifier3");
byte [] val = Bytes.toBytes("testval");
-
+
//Setting up memstore
KeyValue add1 = new KeyValue(row, fam ,qf1, val);
KeyValue add2 = new KeyValue(row, fam ,qf2, val);
@@ -281,7 +281,7 @@ public class TestMemStore extends TestCa
memstore.add(add1);
memstore.add(add2);
memstore.add(add3);
-
+
//test
Get get = new Get(row);
NavigableSet<byte[]> columns = new TreeSet<byte[]>(Bytes.BYTES_COMPARATOR);
@@ -290,12 +290,12 @@ public class TestMemStore extends TestCa
QueryMatcher matcher =
new QueryMatcher(get, fam, columns, ttl, KeyValue.KEY_COMPARATOR, 1);
-
+
List<KeyValue> result = new ArrayList<KeyValue>();
boolean res = memstore.get(matcher, result);
assertEquals(true, res);
}
-
+
public void testGet_Basic_NotFound() throws IOException {
byte [] row = Bytes.toBytes("testrow");
byte [] fam = Bytes.toBytes("testfamily");
@@ -303,13 +303,13 @@ public class TestMemStore extends TestCa
byte [] qf2 = Bytes.toBytes("testqualifier2");
byte [] qf3 = Bytes.toBytes("testqualifier3");
byte [] val = Bytes.toBytes("testval");
-
+
//Setting up memstore
KeyValue add1 = new KeyValue(row, fam ,qf1, val);
KeyValue add3 = new KeyValue(row, fam ,qf3, val);
memstore.add(add1);
memstore.add(add3);
-
+
//test
Get get = new Get(row);
NavigableSet<byte[]> columns = new TreeSet<byte[]>(Bytes.BYTES_COMPARATOR);
@@ -318,7 +318,7 @@ public class TestMemStore extends TestCa
QueryMatcher matcher =
new QueryMatcher(get, fam, columns, ttl, KeyValue.KEY_COMPARATOR, 1);
-
+
List<KeyValue> result = new ArrayList<KeyValue>();
boolean res = memstore.get(matcher, result);
assertEquals(false, res);
@@ -333,7 +333,7 @@ public class TestMemStore extends TestCa
byte [] qf4 = Bytes.toBytes("testqualifier4");
byte [] qf5 = Bytes.toBytes("testqualifier5");
byte [] val = Bytes.toBytes("testval");
-
+
//Creating get
Get get = new Get(row);
NavigableSet<byte[]> columns = new TreeSet<byte[]>(Bytes.BYTES_COMPARATOR);
@@ -343,7 +343,7 @@ public class TestMemStore extends TestCa
QueryMatcher matcher =
new QueryMatcher(get, fam, columns, ttl, KeyValue.KEY_COMPARATOR, 1);
-
+
//Setting up memstore
memstore.add(new KeyValue(row, fam ,qf1, val));
memstore.add(new KeyValue(row, fam ,qf2, val));
@@ -356,12 +356,12 @@ public class TestMemStore extends TestCa
memstore.add(new KeyValue(row, fam ,qf4, val));
memstore.add(new KeyValue(row, fam ,qf5, val));
assertEquals(2, memstore.kvset.size());
-
+
List<KeyValue> result = new ArrayList<KeyValue>();
boolean res = memstore.get(matcher, result);
assertEquals(true, res);
}
-
+
public void testGet_SpecificTimeStamp() throws IOException {
byte [] row = Bytes.toBytes("testrow");
byte [] fam = Bytes.toBytes("testfamily");
@@ -369,11 +369,11 @@ public class TestMemStore extends TestCa
byte [] qf2 = Bytes.toBytes("testqualifier2");
byte [] qf3 = Bytes.toBytes("testqualifier3");
byte [] val = Bytes.toBytes("testval");
-
+
long ts1 = System.currentTimeMillis();
long ts2 = ts1++;
long ts3 = ts2++;
-
+
//Creating get
Get get = new Get(row);
get.setTimeStamp(ts2);
@@ -385,7 +385,7 @@ public class TestMemStore extends TestCa
QueryMatcher matcher = new QueryMatcher(get, fam, columns, ttl,
KeyValue.KEY_COMPARATOR, 1);
-
+
//Setting up expected
List<KeyValue> expected = new ArrayList<KeyValue>();
KeyValue kv1 = new KeyValue(row, fam ,qf1, ts2, val);
@@ -394,7 +394,7 @@ public class TestMemStore extends TestCa
expected.add(kv1);
expected.add(kv2);
expected.add(kv3);
-
+
//Setting up memstore
memstore.add(new KeyValue(row, fam ,qf1, ts1, val));
memstore.add(new KeyValue(row, fam ,qf2, ts1, val));
@@ -405,11 +405,11 @@ public class TestMemStore extends TestCa
memstore.add(new KeyValue(row, fam ,qf1, ts3, val));
memstore.add(new KeyValue(row, fam ,qf2, ts3, val));
memstore.add(new KeyValue(row, fam ,qf3, ts3, val));
-
+
//Get
List<KeyValue> result = new ArrayList<KeyValue>();
memstore.get(matcher, result);
-
+
assertEquals(expected.size(), result.size());
for(int i=0; i<expected.size(); i++){
assertEquals(expected.get(i), result.get(i));
@@ -424,7 +424,7 @@ public class TestMemStore extends TestCa
byte [] fam = Bytes.toBytes("testfamily");
byte [] qf1 = Bytes.toBytes("testqualifier");
byte [] val = Bytes.toBytes("testval");
-
+
long ts1 = System.nanoTime();
KeyValue put1 = new KeyValue(row, fam, qf1, ts1, val);
long ts2 = ts1 + 1;
@@ -434,9 +434,9 @@ public class TestMemStore extends TestCa
memstore.add(put1);
memstore.add(put2);
memstore.add(put3);
-
+
assertEquals(3, memstore.kvset.size());
-
+
KeyValue del2 = new KeyValue(row, fam, qf1, ts2, KeyValue.Type.Delete, val);
memstore.delete(del2);
@@ -444,20 +444,20 @@ public class TestMemStore extends TestCa
expected.add(put3);
expected.add(del2);
expected.add(put1);
-
+
assertEquals(3, memstore.kvset.size());
int i = 0;
for(KeyValue kv : memstore.kvset) {
assertEquals(expected.get(i++), kv);
}
}
-
+
public void testGetWithDeleteColumn() throws IOException {
byte [] row = Bytes.toBytes("testrow");
byte [] fam = Bytes.toBytes("testfamily");
byte [] qf1 = Bytes.toBytes("testqualifier");
byte [] val = Bytes.toBytes("testval");
-
+
long ts1 = System.nanoTime();
KeyValue put1 = new KeyValue(row, fam, qf1, ts1, val);
long ts2 = ts1 + 1;
@@ -467,25 +467,25 @@ public class TestMemStore extends TestCa
memstore.add(put1);
memstore.add(put2);
memstore.add(put3);
-
+
assertEquals(3, memstore.kvset.size());
-
- KeyValue del2 =
+
+ KeyValue del2 =
new KeyValue(row, fam, qf1, ts2, KeyValue.Type.DeleteColumn, val);
memstore.delete(del2);
List<KeyValue> expected = new ArrayList<KeyValue>();
expected.add(put3);
expected.add(del2);
-
+
assertEquals(2, memstore.kvset.size());
int i = 0;
for (KeyValue kv: memstore.kvset) {
assertEquals(expected.get(i++), kv);
}
}
-
-
+
+
public void testGetWithDeleteFamily() throws IOException {
byte [] row = Bytes.toBytes("testrow");
byte [] fam = Bytes.toBytes("testfamily");
@@ -494,7 +494,7 @@ public class TestMemStore extends TestCa
byte [] qf3 = Bytes.toBytes("testqualifier3");
byte [] val = Bytes.toBytes("testval");
long ts = System.nanoTime();
-
+
KeyValue put1 = new KeyValue(row, fam, qf1, ts, val);
KeyValue put2 = new KeyValue(row, fam, qf2, ts, val);
KeyValue put3 = new KeyValue(row, fam, qf3, ts, val);
@@ -504,22 +504,22 @@ public class TestMemStore extends TestCa
memstore.add(put2);
memstore.add(put3);
memstore.add(put4);
-
- KeyValue del =
+
+ KeyValue del =
new KeyValue(row, fam, null, ts, KeyValue.Type.DeleteFamily, val);
memstore.delete(del);
List<KeyValue> expected = new ArrayList<KeyValue>();
expected.add(del);
expected.add(put4);
-
+
assertEquals(2, memstore.kvset.size());
int i = 0;
for (KeyValue kv: memstore.kvset) {
assertEquals(expected.get(i++), kv);
}
}
-
+
public void testKeepDeleteInmemstore() {
byte [] row = Bytes.toBytes("testrow");
byte [] fam = Bytes.toBytes("testfamily");
@@ -570,30 +570,30 @@ public class TestMemStore extends TestCa
assertEquals(delete, memstore.kvset.first());
}
-
+
//////////////////////////////////////////////////////////////////////////////
// Helpers
- //////////////////////////////////////////////////////////////////////////////
+ //////////////////////////////////////////////////////////////////////////////
private byte [] makeQualifier(final int i1, final int i2){
return Bytes.toBytes(Integer.toString(i1) + ";" +
Integer.toString(i2));
}
-
+
/**
* Adds {@link #ROW_COUNT} rows and {@link #COLUMNS_COUNT}
* @param hmc Instance to add rows to.
* @return How many rows we added.
- * @throws IOException
+ * @throws IOException
*/
private int addRows(final MemStore hmc) {
return addRows(hmc, HConstants.LATEST_TIMESTAMP);
}
-
+
/**
* Adds {@link #ROW_COUNT} rows and {@link #COLUMNS_COUNT}
* @param hmc Instance to add rows to.
* @return How many rows we added.
- * @throws IOException
+ * @throws IOException
*/
private int addRows(final MemStore hmc, final long ts) {
for (int i = 0; i < ROW_COUNT; i++) {
Modified: hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestQueryMatcher.java
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestQueryMatcher.java?rev=942186&r1=942185&r2=942186&view=diff
==============================================================================
--- hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestQueryMatcher.java (original)
+++ hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestQueryMatcher.java Fri May 7 19:26:45 2010
@@ -37,7 +37,7 @@ import org.apache.hadoop.hbase.util.Byte
public class TestQueryMatcher extends HBaseTestCase
implements HConstants {
private static final boolean PRINT = false;
-
+
private byte [] row1;
private byte [] row2;
private byte [] fam1;
@@ -80,10 +80,10 @@ implements HConstants {
}
- public void testMatch_ExplicitColumns()
+ public void testMatch_ExplicitColumns()
throws IOException {
//Moving up from the Tracker by using Gets and List<KeyValue> instead
- //of just byte []
+ //of just byte []
//Expected result
List<MatchCode> expected = new ArrayList<MatchCode>();
@@ -116,17 +116,17 @@ implements HConstants {
for(int i=0; i< expected.size(); i++){
assertEquals(expected.get(i), actual.get(i));
if(PRINT){
- System.out.println("expected "+expected.get(i)+
+ System.out.println("expected "+expected.get(i)+
", actual " +actual.get(i));
}
}
}
- public void testMatch_Wildcard()
+ public void testMatch_Wildcard()
throws IOException {
//Moving up from the Tracker by using Gets and List<KeyValue> instead
- //of just byte []
+ //of just byte []
//Expected result
List<MatchCode> expected = new ArrayList<MatchCode>();
@@ -157,24 +157,24 @@ implements HConstants {
for(int i=0; i< expected.size(); i++){
assertEquals(expected.get(i), actual.get(i));
if(PRINT){
- System.out.println("expected "+expected.get(i)+
+ System.out.println("expected "+expected.get(i)+
", actual " +actual.get(i));
}
}
}
-
+
/**
- * Verify that {@link QueryMatcher} only skips expired KeyValue
- * instances and does not exit early from the row (skipping
+ * Verify that {@link QueryMatcher} only skips expired KeyValue
+ * instances and does not exit early from the row (skipping
* later non-expired KeyValues). This version mimics a Get with
* explicitly specified column qualifiers.
- *
+ *
* @throws IOException
*/
public void testMatch_ExpiredExplicit()
throws IOException {
-
+
long testTTL = 1000;
MatchCode [] expected = new MatchCode[] {
MatchCode.SKIP,
@@ -184,10 +184,10 @@ implements HConstants {
MatchCode.SKIP,
MatchCode.NEXT
};
-
+
QueryMatcher qm = new QueryMatcher(get, fam2,
get.getFamilyMap().get(fam2), testTTL, rowComparator, 1);
-
+
long now = System.currentTimeMillis();
KeyValue [] kvs = new KeyValue[] {
new KeyValue(row1, fam2, col1, now-100, data),
@@ -195,36 +195,36 @@ implements HConstants {
new KeyValue(row1, fam2, col3, now-5000, data),
new KeyValue(row1, fam2, col4, now-500, data),
new KeyValue(row1, fam2, col5, now-10000, data),
- new KeyValue(row2, fam1, col1, now-10, data)
+ new KeyValue(row2, fam1, col1, now-10, data)
};
List<MatchCode> actual = new ArrayList<MatchCode>(kvs.length);
for (KeyValue kv : kvs) {
actual.add( qm.match(kv) );
}
-
+
assertEquals(expected.length, actual.size());
for (int i=0; i<expected.length; i++) {
if(PRINT){
- System.out.println("expected "+expected[i]+
+ System.out.println("expected "+expected[i]+
", actual " +actual.get(i));
}
assertEquals(expected[i], actual.get(i));
}
}
-
-
+
+
/**
- * Verify that {@link QueryMatcher} only skips expired KeyValue
- * instances and does not exit early from the row (skipping
+ * Verify that {@link QueryMatcher} only skips expired KeyValue
+ * instances and does not exit early from the row (skipping
* later non-expired KeyValues). This version mimics a Get with
* wildcard-inferred column qualifiers.
- *
+ *
* @throws IOException
- */
+ */
public void testMatch_ExpiredWildcard()
throws IOException {
-
+
long testTTL = 1000;
MatchCode [] expected = new MatchCode[] {
MatchCode.INCLUDE,
@@ -234,10 +234,10 @@ implements HConstants {
MatchCode.SKIP,
MatchCode.NEXT
};
-
+
QueryMatcher qm = new QueryMatcher(get, fam2,
null, testTTL, rowComparator, 1);
-
+
long now = System.currentTimeMillis();
KeyValue [] kvs = new KeyValue[] {
new KeyValue(row1, fam2, col1, now-100, data),
@@ -245,18 +245,18 @@ implements HConstants {
new KeyValue(row1, fam2, col3, now-5000, data),
new KeyValue(row1, fam2, col4, now-500, data),
new KeyValue(row1, fam2, col5, now-10000, data),
- new KeyValue(row2, fam1, col1, now-10, data)
+ new KeyValue(row2, fam1, col1, now-10, data)
};
List<MatchCode> actual = new ArrayList<MatchCode>(kvs.length);
for (KeyValue kv : kvs) {
actual.add( qm.match(kv) );
}
-
+
assertEquals(expected.length, actual.size());
for (int i=0; i<expected.length; i++) {
if(PRINT){
- System.out.println("expected "+expected[i]+
+ System.out.println("expected "+expected[i]+
", actual " +actual.get(i));
}
assertEquals(expected[i], actual.get(i));
Modified: hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestScanDeleteTracker.java
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestScanDeleteTracker.java?rev=942186&r1=942185&r2=942186&view=diff
==============================================================================
--- hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestScanDeleteTracker.java (original)
+++ hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestScanDeleteTracker.java Fri May 7 19:26:45 2010
@@ -31,83 +31,83 @@ public class TestScanDeleteTracker exten
private ScanDeleteTracker sdt;
private long timestamp = 10L;
private byte deleteType = 0;
-
+
public void setUp() throws Exception {
super.setUp();
sdt = new ScanDeleteTracker();
}
-
+
public void testDeletedBy_Delete() {
byte [] qualifier = Bytes.toBytes("qualifier");
deleteType = KeyValue.Type.Delete.getCode();
-
+
sdt.add(qualifier, 0, qualifier.length, timestamp, deleteType);
boolean ret = sdt.isDeleted(qualifier, 0, qualifier.length, timestamp);
assertEquals(true, ret);
}
-
+
public void testDeletedBy_DeleteColumn() {
byte [] qualifier = Bytes.toBytes("qualifier");
deleteType = KeyValue.Type.DeleteColumn.getCode();
-
+
sdt.add(qualifier, 0, qualifier.length, timestamp, deleteType);
timestamp -= 5;
boolean ret = sdt.isDeleted(qualifier, 0, qualifier.length, timestamp);
assertEquals(true, ret);
}
-
+
public void testDeletedBy_DeleteFamily() {
byte [] qualifier = Bytes.toBytes("qualifier");
deleteType = KeyValue.Type.DeleteFamily.getCode();
-
+
sdt.add(qualifier, 0, qualifier.length, timestamp, deleteType);
-
+
timestamp -= 5;
boolean ret = sdt.isDeleted(qualifier, 0, qualifier.length, timestamp);
assertEquals(true, ret);
}
-
+
public void testDelete_DeleteColumn() {
byte [] qualifier = Bytes.toBytes("qualifier");
deleteType = KeyValue.Type.Delete.getCode();
-
+
sdt.add(qualifier, 0, qualifier.length, timestamp, deleteType);
-
+
timestamp -= 5;
deleteType = KeyValue.Type.DeleteColumn.getCode();
sdt.add(qualifier, 0, qualifier.length, timestamp, deleteType);
-
+
timestamp -= 5;
boolean ret = sdt.isDeleted(qualifier, 0, qualifier.length, timestamp);
assertEquals(true, ret);
}
-
-
+
+
public void testDeleteColumn_Delete() {
byte [] qualifier = Bytes.toBytes("qualifier");
deleteType = KeyValue.Type.DeleteColumn.getCode();
-
+
sdt.add(qualifier, 0, qualifier.length, timestamp, deleteType);
-
+
qualifier = Bytes.toBytes("qualifier1");
deleteType = KeyValue.Type.Delete.getCode();
sdt.add(qualifier, 0, qualifier.length, timestamp, deleteType);
-
+
boolean ret = sdt.isDeleted(qualifier, 0, qualifier.length, timestamp);
assertEquals(true, ret);
}
-
+
//Testing new way where we save the Delete in case of a Delete for specific
//ts, could have just added the last line to the first test, but rather keep
//them separated
public void testDelete_KeepDelete(){
byte [] qualifier = Bytes.toBytes("qualifier");
deleteType = KeyValue.Type.Delete.getCode();
-
+
sdt.add(qualifier, 0, qualifier.length, timestamp, deleteType);
sdt.isDeleted(qualifier, 0, qualifier.length, timestamp);
assertEquals(false ,sdt.isEmpty());
}
-
-
+
+
}
Modified: hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestScanWildcardColumnTracker.java
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestScanWildcardColumnTracker.java?rev=942186&r1=942185&r2=942186&view=diff
==============================================================================
--- hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestScanWildcardColumnTracker.java (original)
+++ hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestScanWildcardColumnTracker.java Fri May 7 19:26:45 2010
@@ -30,28 +30,28 @@ import org.apache.hadoop.hbase.util.Byte
public class TestScanWildcardColumnTracker extends HBaseTestCase {
final static int VERSIONS = 2;
-
+
public void testCheckColumn_Ok() {
//Create a WildcardColumnTracker
- ScanWildcardColumnTracker tracker =
+ ScanWildcardColumnTracker tracker =
new ScanWildcardColumnTracker(VERSIONS);
-
+
//Create list of qualifiers
List<byte[]> qualifiers = new ArrayList<byte[]>();
qualifiers.add(Bytes.toBytes("qualifer1"));
qualifiers.add(Bytes.toBytes("qualifer2"));
qualifiers.add(Bytes.toBytes("qualifer3"));
qualifiers.add(Bytes.toBytes("qualifer4"));
-
+
//Setting up expected result
List<MatchCode> expected = new ArrayList<MatchCode>();
expected.add(MatchCode.INCLUDE);
expected.add(MatchCode.INCLUDE);
expected.add(MatchCode.INCLUDE);
expected.add(MatchCode.INCLUDE);
-
+
List<MatchCode> actual = new ArrayList<MatchCode>();
-
+
for(byte [] qualifier : qualifiers) {
MatchCode mc = tracker.checkColumn(qualifier, 0, qualifier.length);
actual.add(mc);
@@ -62,28 +62,28 @@ public class TestScanWildcardColumnTrack
assertEquals(expected.get(i), actual.get(i));
}
}
-
+
public void testCheckColumn_EnforceVersions() {
//Create a WildcardColumnTracker
- ScanWildcardColumnTracker tracker =
+ ScanWildcardColumnTracker tracker =
new ScanWildcardColumnTracker(VERSIONS);
-
+
//Create list of qualifiers
List<byte[]> qualifiers = new ArrayList<byte[]>();
qualifiers.add(Bytes.toBytes("qualifer1"));
qualifiers.add(Bytes.toBytes("qualifer1"));
qualifiers.add(Bytes.toBytes("qualifer1"));
qualifiers.add(Bytes.toBytes("qualifer2"));
-
+
//Setting up expected result
List<MatchCode> expected = new ArrayList<MatchCode>();
expected.add(MatchCode.INCLUDE);
expected.add(MatchCode.INCLUDE);
expected.add(MatchCode.SKIP);
expected.add(MatchCode.INCLUDE);
-
+
List<MatchCode> actual = new ArrayList<MatchCode>();
-
+
for(byte [] qualifier : qualifiers) {
MatchCode mc = tracker.checkColumn(qualifier, 0, qualifier.length);
actual.add(mc);
@@ -94,19 +94,19 @@ public class TestScanWildcardColumnTrack
assertEquals(expected.get(i), actual.get(i));
}
}
-
+
public void DisabledTestCheckColumn_WrongOrder() {
//Create a WildcardColumnTracker
- ScanWildcardColumnTracker tracker =
+ ScanWildcardColumnTracker tracker =
new ScanWildcardColumnTracker(VERSIONS);
-
+
//Create list of qualifiers
List<byte[]> qualifiers = new ArrayList<byte[]>();
qualifiers.add(Bytes.toBytes("qualifer2"));
qualifiers.add(Bytes.toBytes("qualifer1"));
-
+
boolean ok = false;
-
+
try {
for(byte [] qualifier : qualifiers) {
tracker.checkColumn(qualifier, 0, qualifier.length);
@@ -117,5 +117,5 @@ public class TestScanWildcardColumnTrack
assertEquals(true, ok);
}
-
+
}
Modified: hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestScanner.java
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestScanner.java?rev=942186&r1=942185&r2=942186&view=diff
==============================================================================
--- hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestScanner.java (original)
+++ hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestScanner.java Fri May 7 19:26:45 2010
@@ -52,7 +52,7 @@ import org.apache.hadoop.hdfs.MiniDFSClu
*/
public class TestScanner extends HBaseTestCase {
private final Log LOG = LogFactory.getLog(this.getClass());
-
+
private static final byte [] FIRST_ROW = HConstants.EMPTY_START_ROW;
private static final byte [][] COLS = { HConstants.CATALOG_FAMILY };
private static final byte [][] EXPLICIT_COLS = {
@@ -60,7 +60,7 @@ public class TestScanner extends HBaseTe
// TODO ryan
//HConstants.STARTCODE_QUALIFIER
};
-
+
static final HTableDescriptor TESTTABLEDESC =
new HTableDescriptor("testscanner");
static {
@@ -73,9 +73,9 @@ public class TestScanner extends HBaseTe
public static final HRegionInfo REGION_INFO =
new HRegionInfo(TESTTABLEDESC, HConstants.EMPTY_BYTE_ARRAY,
HConstants.EMPTY_BYTE_ARRAY);
-
+
private static final byte [] ROW_KEY = REGION_INFO.getRegionName();
-
+
private static final long START_CODE = Long.MAX_VALUE;
private MiniDFSCluster cluster = null;
@@ -89,12 +89,12 @@ public class TestScanner extends HBaseTe
this.conf.set(HConstants.HBASE_DIR,
this.cluster.getFileSystem().getHomeDirectory().toString());
super.setUp();
-
+
}
/**
* Test basic stop row filter works.
- * @throws Exception
+ * @throws Exception
*/
public void testStopRow() throws Exception {
byte [] startrow = Bytes.toBytes("bbb");
@@ -140,7 +140,7 @@ public class TestScanner extends HBaseTe
shutdownDfs(this.cluster);
}
}
-
+
void rowPrefixFilter(Scan scan) throws IOException {
List<KeyValue> results = new ArrayList<KeyValue>();
scan.addFamily(HConstants.CATALOG_FAMILY);
@@ -156,7 +156,7 @@ public class TestScanner extends HBaseTe
}
s.close();
}
-
+
void rowInclusiveStopFilter(Scan scan, byte[] stopRow) throws IOException {
List<KeyValue> results = new ArrayList<KeyValue>();
scan.addFamily(HConstants.CATALOG_FAMILY);
@@ -171,7 +171,7 @@ public class TestScanner extends HBaseTe
}
s.close();
}
-
+
public void testFilters() throws IOException {
try {
this.r = createNewHRegion(REGION_INFO.getTableDesc(), null, null);
@@ -181,7 +181,7 @@ public class TestScanner extends HBaseTe
Scan scan = new Scan();
scan.setFilter(newFilter);
rowPrefixFilter(scan);
-
+
byte[] stopRow = Bytes.toBytes("bbc");
newFilter = new WhileMatchFilter(new InclusiveStopFilter(stopRow));
scan = new Scan();
@@ -202,7 +202,7 @@ public class TestScanner extends HBaseTe
try {
r = createNewHRegion(TESTTABLEDESC, null, null);
region = new HRegionIncommon(r);
-
+
// Write information to the meta table
Put put = new Put(ROW_KEY, System.currentTimeMillis(), null);
@@ -216,23 +216,23 @@ public class TestScanner extends HBaseTe
// What we just committed is in the memstore. Verify that we can get
// it back both with scanning and get
-
+
scan(false, null);
getRegionInfo();
-
+
// Close and re-open
-
+
r.close();
r = openClosedRegion(r);
region = new HRegionIncommon(r);
// Verify we can get the data back now that it is on disk.
-
+
scan(false, null);
getRegionInfo();
-
+
// Store some new information
-
+
HServerAddress address = new HServerAddress("foo.bar.com:1234");
put = new Put(ROW_KEY, System.currentTimeMillis(), null);
@@ -242,45 +242,45 @@ public class TestScanner extends HBaseTe
// put.add(HConstants.COL_STARTCODE, Bytes.toBytes(START_CODE));
region.put(put);
-
+
// Validate that we can still get the HRegionInfo, even though it is in
// an older row on disk and there is a newer row in the memstore
-
+
scan(true, address.toString());
getRegionInfo();
-
+
// flush cache
region.flushcache();
// Validate again
-
+
scan(true, address.toString());
getRegionInfo();
// Close and reopen
-
+
r.close();
r = openClosedRegion(r);
region = new HRegionIncommon(r);
// Validate again
-
+
scan(true, address.toString());
getRegionInfo();
// Now update the information again
address = new HServerAddress("bar.foo.com:4321");
-
+
put = new Put(ROW_KEY, System.currentTimeMillis(), null);
put.add(HConstants.CATALOG_FAMILY, HConstants.SERVER_QUALIFIER,
Bytes.toBytes(address.toString()));
region.put(put);
-
+
// Validate again
-
+
scan(true, address.toString());
getRegionInfo();
@@ -289,26 +289,26 @@ public class TestScanner extends HBaseTe
region.flushcache();
// Validate again
-
+
scan(true, address.toString());
getRegionInfo();
// Close and reopen
-
+
r.close();
r = openClosedRegion(r);
region = new HRegionIncommon(r);
// Validate again
-
+
scan(true, address.toString());
getRegionInfo();
-
+
// clean up
-
+
r.close();
r.getLog().closeAndDelete();
-
+
} finally {
shutdownDfs(cluster);
}
@@ -318,17 +318,17 @@ public class TestScanner extends HBaseTe
private void validateRegionInfo(byte [] regionBytes) throws IOException {
HRegionInfo info =
(HRegionInfo) Writables.getWritable(regionBytes, new HRegionInfo());
-
+
assertEquals(REGION_INFO.getRegionId(), info.getRegionId());
assertEquals(0, info.getStartKey().length);
assertEquals(0, info.getEndKey().length);
assertEquals(0, Bytes.compareTo(info.getRegionName(), REGION_INFO.getRegionName()));
assertEquals(0, info.getTableDesc().compareTo(REGION_INFO.getTableDesc()));
}
-
+
/** Use a scanner to get the region info and then validate the results */
private void scan(boolean validateStartcode, String serverName)
- throws IOException {
+ throws IOException {
InternalScanner scanner = null;
Scan scan = null;
List<KeyValue> results = new ArrayList<KeyValue>();
@@ -336,7 +336,7 @@ public class TestScanner extends HBaseTe
COLS,
EXPLICIT_COLS
};
-
+
for(int i = 0; i < scanColumns.length; i++) {
try {
scan = new Scan(FIRST_ROW);
@@ -345,26 +345,26 @@ public class TestScanner extends HBaseTe
}
scanner = r.getScanner(scan);
while (scanner.next(results)) {
- assertTrue(hasColumn(results, HConstants.CATALOG_FAMILY,
+ assertTrue(hasColumn(results, HConstants.CATALOG_FAMILY,
HConstants.REGIONINFO_QUALIFIER));
- byte [] val = getColumn(results, HConstants.CATALOG_FAMILY,
+ byte [] val = getColumn(results, HConstants.CATALOG_FAMILY,
HConstants.REGIONINFO_QUALIFIER).getValue();
validateRegionInfo(val);
if(validateStartcode) {
-// assertTrue(hasColumn(results, HConstants.CATALOG_FAMILY,
+// assertTrue(hasColumn(results, HConstants.CATALOG_FAMILY,
// HConstants.STARTCODE_QUALIFIER));
-// val = getColumn(results, HConstants.CATALOG_FAMILY,
+// val = getColumn(results, HConstants.CATALOG_FAMILY,
// HConstants.STARTCODE_QUALIFIER).getValue();
assertNotNull(val);
assertFalse(val.length == 0);
long startCode = Bytes.toLong(val);
assertEquals(START_CODE, startCode);
}
-
+
if(serverName != null) {
- assertTrue(hasColumn(results, HConstants.CATALOG_FAMILY,
+ assertTrue(hasColumn(results, HConstants.CATALOG_FAMILY,
HConstants.SERVER_QUALIFIER));
- val = getColumn(results, HConstants.CATALOG_FAMILY,
+ val = getColumn(results, HConstants.CATALOG_FAMILY,
HConstants.SERVER_QUALIFIER).getValue();
assertNotNull(val);
assertFalse(val.length == 0);
@@ -389,9 +389,9 @@ public class TestScanner extends HBaseTe
return true;
}
}
- return false;
+ return false;
}
-
+
private KeyValue getColumn(final List<KeyValue> kvs, final byte [] family,
final byte [] qualifier) {
for (KeyValue kv: kvs) {
@@ -401,15 +401,15 @@ public class TestScanner extends HBaseTe
}
return null;
}
-
-
+
+
/** Use get to retrieve the HRegionInfo and validate it */
private void getRegionInfo() throws IOException {
Get get = new Get(ROW_KEY);
get.addColumn(HConstants.CATALOG_FAMILY, HConstants.REGIONINFO_QUALIFIER);
Result result = region.get(get, null);
byte [] bytes = result.value();
- validateRegionInfo(bytes);
+ validateRegionInfo(bytes);
}
/**
@@ -460,7 +460,7 @@ public class TestScanner extends HBaseTe
}
}
-
+
/*
* @param hri Region
* @param flushIndex At what row we start the flush.
Modified: hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestStore.java
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestStore.java?rev=942186&r1=942185&r2=942186&view=diff
==============================================================================
--- hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestStore.java (original)
+++ hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestStore.java Fri May 7 19:26:45 2010
@@ -45,7 +45,7 @@ import java.util.TreeSet;
import java.util.concurrent.ConcurrentSkipListSet;
/**
- * Test class fosr the Store
+ * Test class fosr the Store
*/
public class TestStore extends TestCase {
Store store;
@@ -97,7 +97,7 @@ public class TestStore extends TestCase
HColumnDescriptor hcd = new HColumnDescriptor(family);
HBaseConfiguration conf = new HBaseConfiguration();
FileSystem fs = FileSystem.get(conf);
- Path reconstructionLog = null;
+ Path reconstructionLog = null;
Progressable reporter = null;
fs.delete(logdir, true);
@@ -107,12 +107,12 @@ public class TestStore extends TestCase
HRegionInfo info = new HRegionInfo(htd, null, null, false);
HLog hlog = new HLog(fs, logdir, oldLogDir, conf, null);
HRegion region = new HRegion(basedir, hlog, fs, conf, info, null);
-
+
store = new Store(basedir, region, hcd, fs, reconstructionLog, conf,
reporter);
}
-
+
//////////////////////////////////////////////////////////////////////////////
// Get tests
//////////////////////////////////////////////////////////////////////////////
@@ -154,7 +154,7 @@ public class TestStore extends TestCase
*/
public void testGet_FromMemStoreOnly() throws IOException {
init(this.getName());
-
+
//Put data in memstore
this.store.add(new KeyValue(row, family, qf1, null));
this.store.add(new KeyValue(row, family, qf2, null));
Modified: hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestStoreFile.java
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestStoreFile.java?rev=942186&r1=942185&r2=942186&view=diff
==============================================================================
--- hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestStoreFile.java (original)
+++ hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestStoreFile.java Fri May 7 19:26:45 2010
@@ -40,7 +40,7 @@ import org.apache.hadoop.hdfs.MiniDFSClu
public class TestStoreFile extends HBaseTestCase {
static final Log LOG = LogFactory.getLog(TestStoreFile.class);
private MiniDFSCluster cluster;
-
+
@Override
public void setUp() throws Exception {
try {
@@ -53,7 +53,7 @@ public class TestStoreFile extends HBase
}
super.setUp();
}
-
+
@Override
public void tearDown() throws Exception {
super.tearDown();
@@ -75,7 +75,7 @@ public class TestStoreFile extends HBase
writeStoreFile(writer);
checkHalfHFile(new StoreFile(this.fs, writer.getPath(), true, conf, false));
}
-
+
/*
* Writes HStoreKey and ImmutableBytes data to passed writer and
* then closes it.
@@ -98,7 +98,7 @@ public class TestStoreFile extends HBase
writer.close();
}
}
-
+
/**
* Test that our mechanism of writing store files in one region to reference
* store files in other regions works.
@@ -175,7 +175,7 @@ public class TestStoreFile extends HBase
while ((!topScanner.isSeeked() && topScanner.seekTo()) ||
(topScanner.isSeeked() && topScanner.next())) {
key = topScanner.getKey();
-
+
assertTrue(topScanner.getReader().getComparator().compare(key.array(),
key.arrayOffset(), key.limit(), midkey, 0, midkey.length) >= 0);
if (first) {
@@ -184,7 +184,7 @@ public class TestStoreFile extends HBase
}
}
LOG.info("Last in top: " + Bytes.toString(Bytes.toBytes(key)));
-
+
first = true;
HFileScanner bottomScanner = bottom.getScanner(false, false);
while ((!bottomScanner.isSeeked() && bottomScanner.seekTo()) ||
Modified: hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestStoreScanner.java
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestStoreScanner.java?rev=942186&r1=942185&r2=942186&view=diff
==============================================================================
--- hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestStoreScanner.java (original)
+++ hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestStoreScanner.java Fri May 7 19:26:45 2010
@@ -50,7 +50,7 @@ public class TestStoreScanner extends Te
}
return cols;
}
-
+
public void testScanTimeRange() throws IOException {
String r1 = "R1";
// returns only 1 of these 2 even though same timestamp
@@ -102,7 +102,7 @@ public class TestStoreScanner extends Te
results = new ArrayList<KeyValue>();
assertEquals(true, scan.next(results));
assertEquals(3, results.size());
-
+
}
public void testScanSameTimestamp() throws IOException {
@@ -336,7 +336,7 @@ public class TestStoreScanner extends Te
KeyValueTestUtil.create("R1", "cf", "g", 11, KeyValue.Type.Delete, "dont-care"),
KeyValueTestUtil.create("R1", "cf", "h", 11, KeyValue.Type.Put, "dont-care"),
KeyValueTestUtil.create("R1", "cf", "i", 11, KeyValue.Type.Put, "dont-care"),
- KeyValueTestUtil.create("R2", "cf", "a", 11, KeyValue.Type.Put, "dont-care"),
+ KeyValueTestUtil.create("R2", "cf", "a", 11, KeyValue.Type.Put, "dont-care"),
};
KeyValueScanner [] scanners = new KeyValueScanner[] {
new KeyValueScanFixture(KeyValue.COMPARATOR, kvs)
@@ -407,9 +407,9 @@ public class TestStoreScanner extends Te
results.clear();
assertEquals(false, scan.next(results));
}
-
+
/**
- * Test expiration of KeyValues in combination with a configured TTL for
+ * Test expiration of KeyValues in combination with a configured TTL for
* a column family (as should be triggered in a major compaction).
*/
public void testWildCardTtlScan() throws IOException {
@@ -439,14 +439,14 @@ public class TestStoreScanner extends Te
assertEquals(kvs[1], results.get(0));
assertEquals(kvs[2], results.get(1));
results.clear();
-
+
assertEquals(true, scanner.next(results));
assertEquals(3, results.size());
assertEquals(kvs[4], results.get(0));
assertEquals(kvs[5], results.get(1));
assertEquals(kvs[6], results.get(2));
results.clear();
-
+
assertEquals(false, scanner.next(results));
}
}
Modified: hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestWideScanner.java
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestWideScanner.java?rev=942186&r1=942185&r2=942186&view=diff
==============================================================================
--- hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestWideScanner.java (original)
+++ hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestWideScanner.java Fri May 7 19:26:45 2010
@@ -65,10 +65,10 @@ public class TestWideScanner extends HBa
// Set the hbase.rootdir to be the home directory in mini dfs.
this.conf.set(HConstants.HBASE_DIR,
this.cluster.getFileSystem().getHomeDirectory().toString());
- super.setUp();
+ super.setUp();
}
- private int addWideContent(HRegion region, byte[] family)
+ private int addWideContent(HRegion region, byte[] family)
throws IOException {
int count = 0;
// add a few rows of 2500 columns (we'll use batch of 1000) to make things
Modified: hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestWildcardColumnTracker.java
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestWildcardColumnTracker.java?rev=942186&r1=942185&r2=942186&view=diff
==============================================================================
--- hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestWildcardColumnTracker.java (original)
+++ hadoop/hbase/trunk/core/src/test/java/org/apache/hadoop/hbase/regionserver/TestWildcardColumnTracker.java Fri May 7 19:26:45 2010
@@ -30,8 +30,8 @@ import org.apache.hadoop.hbase.util.Byte
public class TestWildcardColumnTracker extends HBaseTestCase
implements HConstants {
- private boolean PRINT = false;
-
+ private boolean PRINT = false;
+
public void testGet_SingleVersion() {
if(PRINT) {
System.out.println("SingleVersion");
@@ -41,7 +41,7 @@ implements HConstants {
byte [] col3 = Bytes.toBytes("col3");
byte [] col4 = Bytes.toBytes("col4");
byte [] col5 = Bytes.toBytes("col5");
-
+
//Create tracker
List<MatchCode> expected = new ArrayList<MatchCode>();
expected.add(MatchCode.INCLUDE);
@@ -50,9 +50,9 @@ implements HConstants {
expected.add(MatchCode.INCLUDE);
expected.add(MatchCode.INCLUDE);
int maxVersions = 1;
-
+
ColumnTracker exp = new WildcardColumnTracker(maxVersions);
-
+
//Create "Scanner"
List<byte[]> scanner = new ArrayList<byte[]>();
scanner.add(col1);
@@ -60,15 +60,15 @@ implements HConstants {
scanner.add(col3);
scanner.add(col4);
scanner.add(col5);
-
+
//Initialize result
- List<MatchCode> result = new ArrayList<MatchCode>();
-
+ List<MatchCode> result = new ArrayList<MatchCode>();
+
//"Match"
for(byte [] col : scanner){
result.add(exp.checkColumn(col, 0, col.length));
}
-
+
assertEquals(expected.size(), result.size());
for(int i=0; i< expected.size(); i++){
assertEquals(expected.get(i), result.get(i));
@@ -79,7 +79,7 @@ implements HConstants {
}
}
-
+
public void testGet_MultiVersion() {
if(PRINT) {
System.out.println("\nMultiVersion");
@@ -89,7 +89,7 @@ implements HConstants {
byte [] col3 = Bytes.toBytes("col3");
byte [] col4 = Bytes.toBytes("col4");
byte [] col5 = Bytes.toBytes("col5");
-
+
//Create tracker
List<MatchCode> expected = new ArrayList<MatchCode>();
int size = 5;
@@ -99,9 +99,9 @@ implements HConstants {
expected.add(MatchCode.SKIP);
}
int maxVersions = 2;
-
+
ColumnTracker exp = new WildcardColumnTracker(maxVersions);
-
+
//Create "Scanner"
List<byte[]> scanner = new ArrayList<byte[]>();
scanner.add(col1);
@@ -119,15 +119,15 @@ implements HConstants {
scanner.add(col5);
scanner.add(col5);
scanner.add(col5);
-
+
//Initialize result
- List<MatchCode> result = new ArrayList<MatchCode>();
-
+ List<MatchCode> result = new ArrayList<MatchCode>();
+
//"Match"
for(byte [] col : scanner){
result.add(exp.checkColumn(col, 0, col.length));
}
-
+
assertEquals(expected.size(), result.size());
for(int i=0; i< expected.size(); i++){
assertEquals(expected.get(i), result.get(i));
@@ -137,7 +137,7 @@ implements HConstants {
}
}
}
-
+
public void testUpdate_SameColumns(){
if(PRINT) {
System.out.println("\nUpdate_SameColumns");
@@ -147,7 +147,7 @@ implements HConstants {
byte [] col3 = Bytes.toBytes("col3");
byte [] col4 = Bytes.toBytes("col4");
byte [] col5 = Bytes.toBytes("col5");
-
+
//Create tracker
List<MatchCode> expected = new ArrayList<MatchCode>();
int size = 10;
@@ -157,11 +157,11 @@ implements HConstants {
for(int i=0; i<5; i++){
expected.add(MatchCode.SKIP);
}
-
+
int maxVersions = 2;
-
+
ColumnTracker wild = new WildcardColumnTracker(maxVersions);
-
+
//Create "Scanner"
List<byte[]> scanner = new ArrayList<byte[]>();
scanner.add(col1);
@@ -169,10 +169,10 @@ implements HConstants {
scanner.add(col3);
scanner.add(col4);
scanner.add(col5);
-
+
//Initialize result
- List<MatchCode> result = new ArrayList<MatchCode>();
-
+ List<MatchCode> result = new ArrayList<MatchCode>();
+
//"Match"
for(int i=0; i<3; i++){
for(byte [] col : scanner){
@@ -180,7 +180,7 @@ implements HConstants {
}
wild.update();
}
-
+
assertEquals(expected.size(), result.size());
for(int i=0; i<expected.size(); i++){
assertEquals(expected.get(i), result.get(i));
@@ -190,8 +190,8 @@ implements HConstants {
}
}
}
-
-
+
+
public void testUpdate_NewColumns(){
if(PRINT) {
System.out.println("\nUpdate_NewColumns");
@@ -201,13 +201,13 @@ implements HConstants {
byte [] col3 = Bytes.toBytes("col3");
byte [] col4 = Bytes.toBytes("col4");
byte [] col5 = Bytes.toBytes("col5");
-
+
byte [] col6 = Bytes.toBytes("col6");
byte [] col7 = Bytes.toBytes("col7");
byte [] col8 = Bytes.toBytes("col8");
byte [] col9 = Bytes.toBytes("col9");
byte [] col0 = Bytes.toBytes("col0");
-
+
//Create tracker
List<MatchCode> expected = new ArrayList<MatchCode>();
int size = 10;
@@ -217,11 +217,11 @@ implements HConstants {
for(int i=0; i<5; i++){
expected.add(MatchCode.SKIP);
}
-
+
int maxVersions = 1;
-
+
ColumnTracker wild = new WildcardColumnTracker(maxVersions);
-
+
//Create "Scanner"
List<byte[]> scanner = new ArrayList<byte[]>();
scanner.add(col0);
@@ -229,10 +229,10 @@ implements HConstants {
scanner.add(col2);
scanner.add(col3);
scanner.add(col4);
-
+
//Initialize result
- List<MatchCode> result = new ArrayList<MatchCode>();
-
+ List<MatchCode> result = new ArrayList<MatchCode>();
+
for(byte [] col : scanner){
result.add(wild.checkColumn(col, 0, col.length));
}
@@ -253,8 +253,8 @@ implements HConstants {
//Scanner again
for(byte [] col : scanner){
result.add(wild.checkColumn(col, 0, col.length));
- }
-
+ }
+
//"Match"
assertEquals(expected.size(), result.size());
for(int i=0; i<expected.size(); i++){
@@ -265,8 +265,8 @@ implements HConstants {
}
}
}
-
-
+
+
public void testUpdate_MixedColumns(){
if(PRINT) {
System.out.println("\nUpdate_NewColumns");
@@ -276,13 +276,13 @@ implements HConstants {
byte [] col2 = Bytes.toBytes("col2");
byte [] col3 = Bytes.toBytes("col3");
byte [] col4 = Bytes.toBytes("col4");
-
+
byte [] col5 = Bytes.toBytes("col5");
byte [] col6 = Bytes.toBytes("col6");
byte [] col7 = Bytes.toBytes("col7");
byte [] col8 = Bytes.toBytes("col8");
byte [] col9 = Bytes.toBytes("col9");
-
+
//Create tracker
List<MatchCode> expected = new ArrayList<MatchCode>();
int size = 5;
@@ -298,11 +298,11 @@ implements HConstants {
for(int i=0; i<size; i++){
expected.add(MatchCode.SKIP);
}
-
+
int maxVersions = 1;
-
+
ColumnTracker wild = new WildcardColumnTracker(maxVersions);
-
+
//Create "Scanner"
List<byte[]> scanner = new ArrayList<byte[]>();
scanner.add(col0);
@@ -310,10 +310,10 @@ implements HConstants {
scanner.add(col4);
scanner.add(col6);
scanner.add(col8);
-
+
//Initialize result
- List<MatchCode> result = new ArrayList<MatchCode>();
-
+ List<MatchCode> result = new ArrayList<MatchCode>();
+
for(int i=0; i<2; i++){
for(byte [] col : scanner){
result.add(wild.checkColumn(col, 0, col.length));
@@ -336,11 +336,11 @@ implements HConstants {
//Scanner again
for(byte [] col : scanner){
result.add(wild.checkColumn(col, 0, col.length));
- }
-
+ }
+
//"Match"
assertEquals(expected.size(), result.size());
-
+
for(int i=0; i<expected.size(); i++){
assertEquals(expected.get(i), result.get(i));
if(PRINT){
@@ -366,7 +366,7 @@ implements HConstants {
wild.checkColumn(col, 0, col.length);
}
}
-
-
-
+
+
+
}