You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by la...@apache.org on 2015/10/03 05:30:09 UTC
hbase git commit: HBASE-14539 Slight improvement of
StoreScanner.optimize.
Repository: hbase
Updated Branches:
refs/heads/0.98 aa60e800a -> 458d36ff9
HBASE-14539 Slight improvement of StoreScanner.optimize.
Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/458d36ff
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/458d36ff
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/458d36ff
Branch: refs/heads/0.98
Commit: 458d36ff9c7175faa88d6afee4ff9afd099c6c1a
Parents: aa60e80
Author: Lars Hofhansl <la...@apache.org>
Authored: Fri Oct 2 20:31:55 2015 -0700
Committer: Lars Hofhansl <la...@apache.org>
Committed: Fri Oct 2 20:31:55 2015 -0700
----------------------------------------------------------------------
.../apache/hadoop/hbase/regionserver/StoreScanner.java | 13 ++++++-------
1 file changed, 6 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hbase/blob/458d36ff/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreScanner.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreScanner.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreScanner.java
index 8da3752..e30bf59 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreScanner.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreScanner.java
@@ -580,16 +580,13 @@ public class StoreScanner extends NonReversedNonLazyKeyValueScanner
* (See HBASE-13109)
*/
private ScanQueryMatcher.MatchCode optimize(ScanQueryMatcher.MatchCode qcode, Cell cell) {
- byte[] nextIndexedKey = getNextIndexedKey();
- if (nextIndexedKey == null || nextIndexedKey == HConstants.NO_NEXT_INDEXED_KEY ||
- store == null) {
- return qcode;
- }
switch(qcode) {
case INCLUDE_AND_SEEK_NEXT_COL:
case SEEK_NEXT_COL:
{
- if (matcher.compareKeyForNextColumn(nextIndexedKey, cell) >= 0) {
+ byte[] nextIndexedKey = getNextIndexedKey();
+ if (nextIndexedKey != null && nextIndexedKey != HConstants.NO_NEXT_INDEXED_KEY
+ && matcher.compareKeyForNextColumn(nextIndexedKey, cell) >= 0) {
return qcode == MatchCode.SEEK_NEXT_COL ? MatchCode.SKIP : MatchCode.INCLUDE;
}
break;
@@ -597,7 +594,9 @@ public class StoreScanner extends NonReversedNonLazyKeyValueScanner
case INCLUDE_AND_SEEK_NEXT_ROW:
case SEEK_NEXT_ROW:
{
- if (matcher.compareKeyForNextRow(nextIndexedKey, cell) >= 0) {
+ byte[] nextIndexedKey = getNextIndexedKey();
+ if (nextIndexedKey != null && nextIndexedKey != HConstants.NO_NEXT_INDEXED_KEY
+ && matcher.compareKeyForNextRow(nextIndexedKey, cell) >= 0) {
return qcode == MatchCode.SEEK_NEXT_ROW ? MatchCode.SKIP : MatchCode.INCLUDE;
}
break;