You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by hu...@apache.org on 2017/08/25 18:17:57 UTC
hbase git commit: Revert "HBASE-17249 Get/Scan's
setTimeRange/setColumnFamilyTimeRange can take the TimeRange reference as the
parameter instead of creating a new setColumnFamilyTimeRange instance.
(huaxiang sun)"
Repository: hbase
Updated Branches:
refs/heads/master ac1fe07f4 -> 2e8739623
Revert "HBASE-17249 Get/Scan's setTimeRange/setColumnFamilyTimeRange can take the TimeRange reference as the parameter instead of creating a new setColumnFamilyTimeRange instance. (huaxiang sun)"
This reverts commit 61220e4d7c8d7e5fb8ed3bbe2469bc86632c48de.
Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/2e873962
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/2e873962
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/2e873962
Branch: refs/heads/master
Commit: 2e87396236b4d142940b19250bacbef2c15af3d5
Parents: ac1fe07
Author: Huaxiang Sun <hu...@apache.org>
Authored: Thu Aug 24 16:28:16 2017 -0700
Committer: Huaxiang Sun <hu...@apache.org>
Committed: Fri Aug 25 10:53:18 2017 -0700
----------------------------------------------------------------------
.../org/apache/hadoop/hbase/client/Get.java | 33 +++++++----------
.../org/apache/hadoop/hbase/client/Query.java | 38 +-------------------
.../org/apache/hadoop/hbase/client/Scan.java | 36 ++++++++-----------
.../hadoop/hbase/protobuf/ProtobufUtil.java | 12 ++++---
.../hbase/shaded/protobuf/ProtobufUtil.java | 12 ++++---
5 files changed, 43 insertions(+), 88 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hbase/blob/2e873962/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 226ca85..d40e0f2 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
@@ -73,6 +73,7 @@ public class Get extends Query
private boolean cacheBlocks = true;
private int storeLimit = -1;
private int storeOffset = 0;
+ private TimeRange tr = new TimeRange();
private boolean checkExistenceOnly = false;
private boolean closestRowBefore = false;
private Map<byte [], NavigableSet<byte []>> familyMap = new TreeMap<>(Bytes.BYTES_COMPARATOR);
@@ -222,19 +223,9 @@ public class Get extends Query
* @throws IOException
* @return this for invocation chaining
*/
- @Override
public Get setTimeRange(long minStamp, long maxStamp) throws IOException {
- return (Get) super.setTimeRange(minStamp, maxStamp);
- }
-
- /**
- * Get versions of columns only within the specified timestamp range,
- * @param tr Input TimeRange
- * @return this for invocation chaining
- */
- @Override
- public Get setTimeRange(TimeRange tr) {
- return (Get) super.setTimeRange(tr);
+ tr = new TimeRange(minStamp, maxStamp);
+ return this;
}
/**
@@ -245,7 +236,7 @@ public class Get extends Query
public Get setTimeStamp(long timestamp)
throws IOException {
try {
- super.setTimeRange(timestamp, timestamp + 1);
+ tr = new TimeRange(timestamp, timestamp+1);
} catch(Exception e) {
// This should never happen, unless integer overflow or something extremely wrong...
LOG.error("TimeRange failed, likely caused by integer overflow. ", e);
@@ -254,16 +245,10 @@ public class Get extends Query
return this;
}
- @Override
- public Get setColumnFamilyTimeRange(byte[] cf, long minStamp, long maxStamp) {
+ @Override public Get setColumnFamilyTimeRange(byte[] cf, long minStamp, long maxStamp) {
return (Get) super.setColumnFamilyTimeRange(cf, minStamp, maxStamp);
}
- @Override
- public Get setColumnFamilyTimeRange(byte[] cf, TimeRange tr) {
- return (Get) super.setColumnFamilyTimeRange(cf, tr);
- }
-
/**
* Get all available versions.
* @return this for invocation chaining
@@ -404,6 +389,14 @@ public class Get extends Query
}
/**
+ * Method for retrieving the get's TimeRange
+ * @return timeRange
+ */
+ public TimeRange getTimeRange() {
+ return this.tr;
+ }
+
+ /**
* Method for retrieving the keys in the familyMap
* @return keys in the current familyMap
*/
http://git-wip-us.apache.org/repos/asf/hbase/blob/2e873962/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Query.java
----------------------------------------------------------------------
diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Query.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Query.java
index cc9e9d4..a738c84 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Query.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Query.java
@@ -17,7 +17,6 @@
*/
package org.apache.hadoop.hbase.client;
-import java.io.IOException;
import java.util.Map;
import org.apache.hadoop.hbase.shaded.com.google.common.collect.Maps;
@@ -44,7 +43,6 @@ public abstract class Query extends OperationWithAttributes {
protected Consistency consistency = Consistency.STRONG;
protected Map<byte[], TimeRange> colFamTimeRangeMap = Maps.newTreeMap(Bytes.BYTES_COMPARATOR);
protected Boolean loadColumnFamiliesOnDemand = null;
- protected TimeRange tr = new TimeRange();
/**
* @return Filter
*/
@@ -65,36 +63,6 @@ public abstract class Query extends OperationWithAttributes {
}
/**
- * @return TimeRange
- */
- public TimeRange getTimeRange() {
- return tr;
- }
-
- /**
- * Sets the TimeRange to be used by this Query
- * @param tr TimeRange
- * @return Query
- */
- public Query setTimeRange(TimeRange tr) {
- this.tr = tr;
- return this;
- }
-
- /**
- * Sets the TimeRange to be used by this Query
- * [minStamp, maxStamp).
- * @param minStamp minimum timestamp value, inclusive
- * @param maxStamp maximum timestamp value, exclusive
- * @throws IOException
- * @return this for invocation chaining
- */
- public Query setTimeRange(long minStamp, long maxStamp) throws IOException {
- tr = new TimeRange(minStamp, maxStamp);
- return this;
- }
-
- /**
* Sets the authorizations to be used by this Query
* @param authorizations
*/
@@ -257,16 +225,12 @@ public abstract class Query extends OperationWithAttributes {
* @param maxStamp maximum timestamp value, exclusive
* @return this
*/
+
public Query setColumnFamilyTimeRange(byte[] cf, long minStamp, long maxStamp) {
colFamTimeRangeMap.put(cf, new TimeRange(minStamp, maxStamp));
return this;
}
- public Query setColumnFamilyTimeRange(byte[] cf, TimeRange tr) {
- colFamTimeRangeMap.put(cf, tr);
- return this;
- }
-
/**
* @return A map of column families to time ranges
*/
http://git-wip-us.apache.org/repos/asf/hbase/blob/2e873962/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Scan.java
----------------------------------------------------------------------
diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Scan.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Scan.java
index 9100b45..53619f5 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Scan.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Scan.java
@@ -141,7 +141,9 @@ public class Scan extends Query {
private long maxResultSize = -1;
private boolean cacheBlocks = true;
private boolean reversed = false;
- private Map<byte[], NavigableSet<byte[]>> familyMap = new TreeMap<>(Bytes.BYTES_COMPARATOR);
+ private TimeRange tr = new TimeRange();
+ private Map<byte [], NavigableSet<byte []>> familyMap =
+ new TreeMap<byte [], NavigableSet<byte []>>(Bytes.BYTES_COMPARATOR);
private Boolean asyncPrefetch = null;
/**
@@ -350,7 +352,7 @@ public class Scan extends Query {
}
/**
- * Set versions of columns only within the specified timestamp range,
+ * Get versions of columns only within the specified timestamp range,
* [minStamp, maxStamp). Note, default maximum versions to return is 1. If
* your time range spans more than one version and you want all versions
* returned, up the number of versions beyond the default.
@@ -360,18 +362,9 @@ public class Scan extends Query {
* @see #setMaxVersions(int)
* @return this
*/
- @Override
public Scan setTimeRange(long minStamp, long maxStamp) throws IOException {
- return (Scan) super.setTimeRange(minStamp, maxStamp);
- }
-
- /**
- * Set versions of columns only within the specified timestamp range,
- * @param tr Input TimeRange
- * @return this for invocation chaining
- */
- public Scan setTimeRange(TimeRange tr) {
- return (Scan) super.setTimeRange(tr);
+ tr = new TimeRange(minStamp, maxStamp);
+ return this;
}
/**
@@ -387,7 +380,7 @@ public class Scan extends Query {
public Scan setTimeStamp(long timestamp)
throws IOException {
try {
- super.setTimeRange(timestamp, timestamp + 1);
+ tr = new TimeRange(timestamp, timestamp+1);
} catch(Exception e) {
// This should never happen, unless integer overflow or something extremely wrong...
LOG.error("TimeRange failed, likely caused by integer overflow. ", e);
@@ -396,16 +389,10 @@ public class Scan extends Query {
return this;
}
- @Override
- public Scan setColumnFamilyTimeRange(byte[] cf, long minStamp, long maxStamp) {
+ @Override public Scan setColumnFamilyTimeRange(byte[] cf, long minStamp, long maxStamp) {
return (Scan) super.setColumnFamilyTimeRange(cf, minStamp, maxStamp);
}
- @Override
- public Scan setColumnFamilyTimeRange(byte[] cf, TimeRange tr) {
- return (Scan) super.setColumnFamilyTimeRange(cf, tr);
- }
-
/**
* Set the start row of the scan.
* <p>
@@ -817,6 +804,13 @@ public class Scan extends Query {
}
/**
+ * @return TimeRange
+ */
+ public TimeRange getTimeRange() {
+ return this.tr;
+ }
+
+ /**
* @return RowFilter
*/
@Override
http://git-wip-us.apache.org/repos/asf/hbase/blob/2e873962/hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufUtil.java
----------------------------------------------------------------------
diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufUtil.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufUtil.java
index 79a874e..e5373b8 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufUtil.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufUtil.java
@@ -385,12 +385,13 @@ public final class ProtobufUtil {
if (proto.getCfTimeRangeCount() > 0) {
for (HBaseProtos.ColumnFamilyTimeRange cftr : proto.getCfTimeRangeList()) {
TimeRange timeRange = protoToTimeRange(cftr.getTimeRange());
- get.setColumnFamilyTimeRange(cftr.getColumnFamily().toByteArray(), timeRange);
+ get.setColumnFamilyTimeRange(cftr.getColumnFamily().toByteArray(),
+ timeRange.getMin(), timeRange.getMax());
}
}
if (proto.hasTimeRange()) {
TimeRange timeRange = protoToTimeRange(proto.getTimeRange());
- get.setTimeRange(timeRange);
+ get.setTimeRange(timeRange.getMin(), timeRange.getMax());
}
if (proto.hasFilter()) {
FilterProtos.Filter filter = proto.getFilter();
@@ -778,7 +779,7 @@ public final class ProtobufUtil {
}
if (proto.hasTimeRange()) {
TimeRange timeRange = protoToTimeRange(proto.getTimeRange());
- get.setTimeRange(timeRange);
+ get.setTimeRange(timeRange.getMin(), timeRange.getMax());
}
for (NameBytesPair attribute : proto.getAttributeList()) {
get.setAttribute(attribute.getName(), attribute.getValue().toByteArray());
@@ -966,12 +967,13 @@ public final class ProtobufUtil {
if (proto.getCfTimeRangeCount() > 0) {
for (HBaseProtos.ColumnFamilyTimeRange cftr : proto.getCfTimeRangeList()) {
TimeRange timeRange = protoToTimeRange(cftr.getTimeRange());
- scan.setColumnFamilyTimeRange(cftr.getColumnFamily().toByteArray(), timeRange);
+ scan.setColumnFamilyTimeRange(cftr.getColumnFamily().toByteArray(),
+ timeRange.getMin(), timeRange.getMax());
}
}
if (proto.hasTimeRange()) {
TimeRange timeRange = protoToTimeRange(proto.getTimeRange());
- scan.setTimeRange(timeRange);
+ scan.setTimeRange(timeRange.getMin(), timeRange.getMax());
}
if (proto.hasFilter()) {
FilterProtos.Filter filter = proto.getFilter();
http://git-wip-us.apache.org/repos/asf/hbase/blob/2e873962/hbase-client/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/ProtobufUtil.java
----------------------------------------------------------------------
diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/ProtobufUtil.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/ProtobufUtil.java
index 739526e..b6006f0 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/ProtobufUtil.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/shaded/protobuf/ProtobufUtil.java
@@ -511,12 +511,13 @@ public final class ProtobufUtil {
if (proto.getCfTimeRangeCount() > 0) {
for (HBaseProtos.ColumnFamilyTimeRange cftr : proto.getCfTimeRangeList()) {
TimeRange timeRange = protoToTimeRange(cftr.getTimeRange());
- get.setColumnFamilyTimeRange(cftr.getColumnFamily().toByteArray(), timeRange);
+ get.setColumnFamilyTimeRange(cftr.getColumnFamily().toByteArray(),
+ timeRange.getMin(), timeRange.getMax());
}
}
if (proto.hasTimeRange()) {
TimeRange timeRange = protoToTimeRange(proto.getTimeRange());
- get.setTimeRange(timeRange);
+ get.setTimeRange(timeRange.getMin(), timeRange.getMax());
}
if (proto.hasFilter()) {
FilterProtos.Filter filter = proto.getFilter();
@@ -900,7 +901,7 @@ public final class ProtobufUtil {
}
if (proto.hasTimeRange()) {
TimeRange timeRange = protoToTimeRange(proto.getTimeRange());
- get.setTimeRange(timeRange);
+ get.setTimeRange(timeRange.getMin(), timeRange.getMax());
}
for (NameBytesPair attribute : proto.getAttributeList()) {
get.setAttribute(attribute.getName(), attribute.getValue().toByteArray());
@@ -1096,12 +1097,13 @@ public final class ProtobufUtil {
if (proto.getCfTimeRangeCount() > 0) {
for (HBaseProtos.ColumnFamilyTimeRange cftr : proto.getCfTimeRangeList()) {
TimeRange timeRange = protoToTimeRange(cftr.getTimeRange());
- scan.setColumnFamilyTimeRange(cftr.getColumnFamily().toByteArray(), timeRange);
+ scan.setColumnFamilyTimeRange(cftr.getColumnFamily().toByteArray(),
+ timeRange.getMin(), timeRange.getMax());
}
}
if (proto.hasTimeRange()) {
TimeRange timeRange = protoToTimeRange(proto.getTimeRange());
- scan.setTimeRange(timeRange);
+ scan.setTimeRange(timeRange.getMin(), timeRange.getMax());
}
if (proto.hasFilter()) {
FilterProtos.Filter filter = proto.getFilter();