Repository: hbase Updated Branches: refs/heads/master 28de528c6 -> e8e658ed3
Revert "HBASE-16840 Reuse cell's timestamp and type in ScanQueryMatcher" to update author This reverts commit 28de528c6ea19c261213ee229381a18ed3b5ef94. Project: http://git-wip-us.apache.org/repos/asf/hbase/repo Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/e33fd427 Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/e33fd427 Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/e33fd427 Branch: refs/heads/master Commit: e33fd427e4f217612807ebdc6199d23cccedb49f Parents: 28de528 Author: Yu Li <l...@apache.org> Authored: Mon Nov 7 22:27:44 2016 +0800 Committer: Yu Li <l...@apache.org> Committed: Mon Nov 7 22:40:02 2016 +0800 ---------------------------------------------------------------------- .../hbase/regionserver/querymatcher/LegacyScanQueryMatcher.java | 2 +- .../querymatcher/MajorCompactionScanQueryMatcher.java | 5 ++--- .../querymatcher/MinorCompactionScanQueryMatcher.java | 5 ++--- .../regionserver/querymatcher/NormalUserScanQueryMatcher.java | 5 ++--- .../hbase/regionserver/querymatcher/RawScanQueryMatcher.java | 4 +--- .../querymatcher/StripeCompactionScanQueryMatcher.java | 5 ++--- .../hbase/regionserver/querymatcher/UserScanQueryMatcher.java | 5 +++-- 7 files changed, 13 insertions(+), 18 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hbase/blob/e33fd427/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/LegacyScanQueryMatcher.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/LegacyScanQueryMatcher.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/LegacyScanQueryMatcher.java index ac6aa03..ea4bd97 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/LegacyScanQueryMatcher.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/LegacyScanQueryMatcher.java @@ -171,7 +171,7 @@ public class LegacyScanQueryMatcher extends ScanQueryMatcher { long timestamp = cell.getTimestamp(); byte typeByte = cell.getTypeByte(); long mvccVersion = cell.getSequenceId(); - if (CellUtil.isDelete(typeByte)) { + if (CellUtil.isDelete(cell)) { if (keepDeletedCells == KeepDeletedCells.FALSE || (keepDeletedCells == KeepDeletedCells.TTL && timestamp < oldestUnexpiredTS)) { // first ignore delete markers if the scanner can do so, and the http://git-wip-us.apache.org/repos/asf/hbase/blob/e33fd427/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/MajorCompactionScanQueryMatcher.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/MajorCompactionScanQueryMatcher.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/MajorCompactionScanQueryMatcher.java index 67e40ed..6a2ed40 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/MajorCompactionScanQueryMatcher.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/MajorCompactionScanQueryMatcher.java @@ -43,7 +43,6 @@ public class MajorCompactionScanQueryMatcher extends DropDeletesCompactionScanQu } long timestamp = cell.getTimestamp(); long mvccVersion = cell.getSequenceId(); - byte typeByte = cell.getTypeByte(); // The delete logic is pretty complicated now. // This is corroborated by the following: @@ -57,7 +56,7 @@ public class MajorCompactionScanQueryMatcher extends DropDeletesCompactionScanQu // 7. Delete marker need to be version counted together with puts // they affect // - if (CellUtil.isDelete(typeByte)) { + if (CellUtil.isDelete(cell)) { if (mvccVersion > maxReadPointToTrackVersions) { // We can not drop this delete marker yet, and also we should not use this delete marker to // mask any cell yet. @@ -75,7 +74,7 @@ public class MajorCompactionScanQueryMatcher extends DropDeletesCompactionScanQu } } // Skip checking column since we do not remove column during compaction. - return columns.checkVersions(cell, timestamp, typeByte, + return columns.checkVersions(cell, timestamp, cell.getTypeByte(), mvccVersion > maxReadPointToTrackVersions); } } http://git-wip-us.apache.org/repos/asf/hbase/blob/e33fd427/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/MinorCompactionScanQueryMatcher.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/MinorCompactionScanQueryMatcher.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/MinorCompactionScanQueryMatcher.java index cf36366..3b6acde 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/MinorCompactionScanQueryMatcher.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/MinorCompactionScanQueryMatcher.java @@ -42,8 +42,7 @@ public class MinorCompactionScanQueryMatcher extends CompactionScanQueryMatcher return returnCode; } long mvccVersion = cell.getSequenceId(); - byte typeByte = cell.getTypeByte(); - if (CellUtil.isDelete(typeByte)) { + if (CellUtil.isDelete(cell)) { if (mvccVersion > maxReadPointToTrackVersions) { // we should not use this delete marker to mask any cell yet. return MatchCode.INCLUDE; @@ -56,7 +55,7 @@ public class MinorCompactionScanQueryMatcher extends CompactionScanQueryMatcher return returnCode; } // Skip checking column since we do not remove column during compaction. - return columns.checkVersions(cell, cell.getTimestamp(), typeByte, + return columns.checkVersions(cell, cell.getTimestamp(), cell.getTypeByte(), mvccVersion > maxReadPointToTrackVersions); } } http://git-wip-us.apache.org/repos/asf/hbase/blob/e33fd427/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/NormalUserScanQueryMatcher.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/NormalUserScanQueryMatcher.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/NormalUserScanQueryMatcher.java index 894bbec..3942f04 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/NormalUserScanQueryMatcher.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/NormalUserScanQueryMatcher.java @@ -60,8 +60,7 @@ public class NormalUserScanQueryMatcher extends UserScanQueryMatcher { return returnCode; } long timestamp = cell.getTimestamp(); - byte typeByte = cell.getTypeByte(); - if (CellUtil.isDelete(typeByte)) { + if (CellUtil.isDelete(cell)) { boolean includeDeleteMarker = seePastDeleteMarkers ? tr.withinTimeRange(timestamp) : tr.withinOrAfterTimeRange(timestamp); if (includeDeleteMarker) { @@ -73,7 +72,7 @@ public class NormalUserScanQueryMatcher extends UserScanQueryMatcher { if (returnCode != null) { return returnCode; } - return matchColumn(cell, timestamp, typeByte); + return matchColumn(cell); } @Override http://git-wip-us.apache.org/repos/asf/hbase/blob/e33fd427/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/RawScanQueryMatcher.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/RawScanQueryMatcher.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/RawScanQueryMatcher.java index 84484ed..acdae90 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/RawScanQueryMatcher.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/RawScanQueryMatcher.java @@ -44,11 +44,9 @@ public class RawScanQueryMatcher extends UserScanQueryMatcher { if (returnCode != null) { return returnCode; } - long timestamp = cell.getTimestamp(); - byte typeByte = cell.getTypeByte(); // For a raw scan, we do not filter out any cells by delete marker, and delete marker is also // returned, so we do not need to track delete. - return matchColumn(cell, timestamp, typeByte); + return matchColumn(cell); } @Override http://git-wip-us.apache.org/repos/asf/hbase/blob/e33fd427/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/StripeCompactionScanQueryMatcher.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/StripeCompactionScanQueryMatcher.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/StripeCompactionScanQueryMatcher.java index 1ba08f7..c1e63b4 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/StripeCompactionScanQueryMatcher.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/StripeCompactionScanQueryMatcher.java @@ -55,8 +55,7 @@ public class StripeCompactionScanQueryMatcher extends DropDeletesCompactionScanQ return returnCode; } long mvccVersion = cell.getSequenceId(); - byte typeByte = cell.getTypeByte(); - if (CellUtil.isDelete(typeByte)) { + if (CellUtil.isDelete(cell)) { if (mvccVersion > maxReadPointToTrackVersions) { return MatchCode.INCLUDE; } @@ -78,7 +77,7 @@ public class StripeCompactionScanQueryMatcher extends DropDeletesCompactionScanQ } } // Skip checking column since we do not remove column during compaction. - return columns.checkVersions(cell, cell.getTimestamp(), typeByte, + return columns.checkVersions(cell, cell.getTimestamp(), cell.getTypeByte(), mvccVersion > maxReadPointToTrackVersions); } http://git-wip-us.apache.org/repos/asf/hbase/blob/e33fd427/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/UserScanQueryMatcher.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/UserScanQueryMatcher.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/UserScanQueryMatcher.java index db85d0f..ec7fc11 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/UserScanQueryMatcher.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/querymatcher/UserScanQueryMatcher.java @@ -88,8 +88,8 @@ public abstract class UserScanQueryMatcher extends ScanQueryMatcher { } } - protected final MatchCode matchColumn(Cell cell, long timestamp, byte typeByte) - throws IOException { + protected final MatchCode matchColumn(Cell cell) throws IOException { + long timestamp = cell.getTimestamp(); int tsCmp = tr.compare(timestamp); if (tsCmp > 0) { return MatchCode.SKIP; @@ -97,6 +97,7 @@ public abstract class UserScanQueryMatcher extends ScanQueryMatcher { if (tsCmp < 0) { return columns.getNextRowOrNextColumn(cell); } + byte typeByte = cell.getTypeByte(); // STEP 1: Check if the column is part of the requested columns MatchCode colChecker = columns.checkColumn(cell, typeByte); if (colChecker != MatchCode.INCLUDE) {