Repository: gora
Updated Branches:
  refs/heads/master 7c0e34eb9 -> 58df5a4b6


GORA-510 Conform Query.setEndKey to inclusive query for HBaseStore
Fix + enabled ignored Tests

Project: http://git-wip-us.apache.org/repos/asf/gora/repo
Commit: http://git-wip-us.apache.org/repos/asf/gora/commit/b9b91ae6
Tree: http://git-wip-us.apache.org/repos/asf/gora/tree/b9b91ae6
Diff: http://git-wip-us.apache.org/repos/asf/gora/diff/b9b91ae6

Branch: refs/heads/master
Commit: b9b91ae68d5ecc7a94d9aa14f3a93bb892c5da38
Parents: 1242a61
Author: Alfonso Nishikawa Muñumer <[email protected]>
Authored: Sun May 28 11:36:26 2017 -0100
Committer: Alfonso Nishikawa Muñumer <[email protected]>
Committed: Sun May 28 11:36:26 2017 -0100

----------------------------------------------------------------------
 .../org/apache/gora/store/DataStoreTestUtil.java  |  2 +-
 .../org/apache/gora/hbase/store/HBaseStore.java   |  6 +++++-
 .../apache/gora/hbase/store/TestHBaseStore.java   | 18 ------------------
 3 files changed, 6 insertions(+), 20 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/gora/blob/b9b91ae6/gora-core/src/test/java/org/apache/gora/store/DataStoreTestUtil.java
----------------------------------------------------------------------
diff --git 
a/gora-core/src/test/java/org/apache/gora/store/DataStoreTestUtil.java 
b/gora-core/src/test/java/org/apache/gora/store/DataStoreTestUtil.java
index 30792cd..b9e58cd 100644
--- a/gora-core/src/test/java/org/apache/gora/store/DataStoreTestUtil.java
+++ b/gora-core/src/test/java/org/apache/gora/store/DataStoreTestUtil.java
@@ -1083,7 +1083,7 @@ public class DataStoreTestUtil {
     for (int i = 0; i < URLS.length; i++) {
       WebPage page = store.get(URLS[i]);
       assertNotNull(page);
-      if( URLS[i].compareTo(startKey) < 0 || URLS[i].compareTo(endKey) >= 0) {
+      if( URLS[i].compareTo(startKey) < 0 || URLS[i].compareTo(endKey) > 0) {
         //not deleted
         assertWebPage(page, i);
       } else {

http://git-wip-us.apache.org/repos/asf/gora/blob/b9b91ae6/gora-hbase/src/main/java/org/apache/gora/hbase/store/HBaseStore.java
----------------------------------------------------------------------
diff --git 
a/gora-hbase/src/main/java/org/apache/gora/hbase/store/HBaseStore.java 
b/gora-hbase/src/main/java/org/apache/gora/hbase/store/HBaseStore.java
index 389f5df..d614ad7 100644
--- a/gora-hbase/src/main/java/org/apache/gora/hbase/store/HBaseStore.java
+++ b/gora-hbase/src/main/java/org/apache/gora/hbase/store/HBaseStore.java
@@ -490,7 +490,11 @@ implements Configurable {
       scan.setStartRow(toBytes(query.getStartKey()));
     }
     if (query.getEndKey() != null) {
-      scan.setStopRow(toBytes(query.getEndKey()));
+      // In HBase the end key is exclusive, so we add a trail zero to make it 
inclusive
+      // as the Gora's query interface declares.
+      byte[] endKey = toBytes(query.getEndKey());
+      byte[] inclusiveEndKey = Arrays.copyOf(endKey, endKey.length+1);
+      scan.setStopRow(inclusiveEndKey);
     }
     addFields(scan, query);
     if (query.getFilter() != null) {

http://git-wip-us.apache.org/repos/asf/gora/blob/b9b91ae6/gora-hbase/src/test/java/org/apache/gora/hbase/store/TestHBaseStore.java
----------------------------------------------------------------------
diff --git 
a/gora-hbase/src/test/java/org/apache/gora/hbase/store/TestHBaseStore.java 
b/gora-hbase/src/test/java/org/apache/gora/hbase/store/TestHBaseStore.java
index 695dea1..7fd320a 100644
--- a/gora-hbase/src/test/java/org/apache/gora/hbase/store/TestHBaseStore.java
+++ b/gora-hbase/src/test/java/org/apache/gora/hbase/store/TestHBaseStore.java
@@ -245,22 +245,4 @@ public class TestHBaseStore extends DataStoreTestBase {
     assertEquals(1000, 
((HBaseStore<String,Employee>)this.employeeStore).getScannerCaching()) ;
   }
 
-  @Ignore("We need to skip this test since gora considers endRow inclusive, 
while its exclusive for HBase.")
-  @Override
-  public void testQueryEndKey() throws IOException {
-    //TODO: We should raise an issue for HBase to allow us to specify if the 
endRow will be inclusive or exclusive.
-  }
-
-  @Ignore("We need to skip this test since gora considers endRow inclusive, 
while its exclusive for HBase.")
-  @Override
-  public void testQueryKeyRange() throws IOException {
-     //TODO: We should raise an issue for HBase to allow us to specify if the 
endRow will be inclusive or exclusive.
-  }
-
-  @Ignore("We need to skip this test since gora considers endRow inclusive, 
while its exclusive for HBase.")
-  @Override
-  public void testDeleteByQuery() throws IOException {
-   //TODO: We should raise an issue for HBase to allow us to specify if the 
endRow will be inclusive or exclusive.
-  }
-
 }

Reply via email to