You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by mb...@apache.org on 2015/05/30 02:42:32 UTC
[3/5] hbase git commit: HBASE-13779 Calling table.exists() before
table.get() end up with an empty Result (addendum)
HBASE-13779 Calling table.exists() before table.get() end up with an empty Result (addendum)
Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/749dda6a
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/749dda6a
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/749dda6a
Branch: refs/heads/master
Commit: 749dda6aca0562ed902b25d125d2c47139b1c989
Parents: e0cf811
Author: Matteo Bertozzi <ma...@cloudera.com>
Authored: Fri May 29 17:21:20 2015 -0700
Committer: Matteo Bertozzi <ma...@cloudera.com>
Committed: Fri May 29 17:41:33 2015 -0700
----------------------------------------------------------------------
.../org/apache/hadoop/hbase/client/Get.java | 6 ++-
.../org/apache/hadoop/hbase/client/HTable.java | 2 +-
.../org/apache/hadoop/hbase/client/TestGet.java | 40 +++++++++++++++++++-
3 files changed, 45 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hbase/blob/749dda6a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Get.java
----------------------------------------------------------------------
diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Get.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Get.java
index 272b7a6..abf6b1c 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Get.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Get.java
@@ -99,7 +99,11 @@ public class Get extends Query
*/
public Get(Get get) {
this(get.getRow());
- this.filter = get.getFilter();
+ // from Query
+ this.setFilter(get.getFilter());
+ this.setReplicaId(get.getReplicaId());
+ this.setConsistency(get.getConsistency());
+ // from Get
this.cacheBlocks = get.getCacheBlocks();
this.maxVersions = get.getMaxVersions();
this.storeLimit = get.getMaxResultsPerColumnFamily();
http://git-wip-us.apache.org/repos/asf/hbase/blob/749dda6a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/HTable.java
----------------------------------------------------------------------
diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/HTable.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/HTable.java
index 59fce15..686aaa8 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/HTable.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/HTable.java
@@ -684,7 +684,7 @@ public class HTable implements HTableInterface {
*/
@Override
public Result get(final Get get) throws IOException {
- return get(get, false);
+ return get(get, get.isCheckExistenceOnly());
}
private Result get(Get get, final boolean checkExistenceOnly) throws IOException {
http://git-wip-us.apache.org/repos/asf/hbase/blob/749dda6a/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestGet.java
----------------------------------------------------------------------
diff --git a/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestGet.java b/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestGet.java
index fd1ba50..0e18ecf 100644
--- a/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestGet.java
+++ b/hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestGet.java
@@ -40,6 +40,8 @@ import org.apache.hadoop.hbase.filter.FilterList;
import org.apache.hadoop.hbase.filter.KeyOnlyFilter;
import org.apache.hadoop.hbase.protobuf.ProtobufUtil;
import org.apache.hadoop.hbase.protobuf.generated.ClientProtos;
+import org.apache.hadoop.hbase.security.access.Permission;
+import org.apache.hadoop.hbase.security.visibility.Authorizations;
import org.apache.hadoop.hbase.testclassification.ClientTests;
import org.apache.hadoop.hbase.testclassification.SmallTests;
import org.apache.hadoop.hbase.util.Base64;
@@ -155,12 +157,48 @@ public class TestGet {
Set<byte[]> qualifiers = get.getFamilyMap().get(family);
Assert.assertEquals(1, qualifiers.size());
}
-
+
@Test
public void TestGetRowFromGetCopyConstructor() throws Exception {
Get get = new Get(ROW);
+ get.setFilter(null);
+ get.setAuthorizations(new Authorizations("foo"));
+ get.setACL("u", new Permission(Permission.Action.READ));
+ get.setConsistency(Consistency.TIMELINE);
+ get.setReplicaId(2);
+ get.setIsolationLevel(IsolationLevel.READ_UNCOMMITTED);
+ get.setCheckExistenceOnly(true);
+ get.setClosestRowBefore(true);
+ get.setTimeRange(3, 4);
+ get.setMaxVersions(11);
+ get.setMaxResultsPerColumnFamily(10);
+ get.setRowOffsetPerColumnFamily(11);
+ get.setCacheBlocks(true);
+
Get copyGet = new Get(get);
assertEquals(0, Bytes.compareTo(get.getRow(), copyGet.getRow()));
+
+ // from OperationWithAttributes
+ assertEquals(get.getId(), copyGet.getId());
+
+ // from Query class
+ assertEquals(get.getFilter(), copyGet.getFilter());
+ assertTrue(get.getAuthorizations().toString().equals(copyGet.getAuthorizations().toString()));
+ assertTrue(Bytes.equals(get.getACL(), copyGet.getACL()));
+ assertEquals(get.getConsistency(), copyGet.getConsistency());
+ assertEquals(get.getReplicaId(), copyGet.getReplicaId());
+ assertEquals(get.getIsolationLevel(), copyGet.getIsolationLevel());
+
+ // from Get class
+ assertEquals(get.isCheckExistenceOnly(), copyGet.isCheckExistenceOnly());
+ assertEquals(get.isClosestRowBefore(), copyGet.isClosestRowBefore());
+ assertTrue(get.getTimeRange().equals(copyGet.getTimeRange()));
+ assertEquals(get.isClosestRowBefore(), copyGet.isClosestRowBefore());
+ assertEquals(get.getMaxVersions(), copyGet.getMaxVersions());
+ assertEquals(get.getMaxResultsPerColumnFamily(), copyGet.getMaxResultsPerColumnFamily());
+ assertEquals(get.getRowOffsetPerColumnFamily(), copyGet.getRowOffsetPerColumnFamily());
+ assertEquals(get.getCacheBlocks(), copyGet.getCacheBlocks());
+ assertEquals(get.getId(), copyGet.getId());
}
@Test