ramkrish86 commented on a change in pull request #2483:
URL: https://github.com/apache/hbase/pull/2483#discussion_r498666595
##########
File path:
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java
##########
@@ -3498,6 +3501,18 @@ public ScanResponse scan(final RpcController controller,
final ScanRequest reque
throw new ServiceException(e);
}
HRegion region = rsh.r;
+ // If the start row is the actual start Row of the region and end row is
actual end row of region
+ // or
+ // If the stop is not specified or the stop Row is greater than the end
key of the current region
+ if ((Bytes.equals(rsh.s.getStartRow(),
region.getRegionInfo().getStartKey())
+ && Bytes.equals(rsh.s.getStopRow(), region.getRegionInfo().getEndKey()))
+ || Bytes.equals(rsh.s.getStopRow(), HConstants.EMPTY_END_ROW)
+ || (Bytes.compareTo(region.getRegionInfo().getEndKey(),
rsh.s.getStopRow()) <= 0
+ && !Bytes.equals(region.getRegionInfo().getEndKey(),
HConstants.EMPTY_END_ROW))) {
+ if(!region.getTableDescriptor().isMetaTable()) {
Review comment:
Currently the number of scan requests that we get is also based on the
scan() call that happens at the RsRpcServices. Also if a scan query is spanning
across two regions - we wil have 2 RPC requests coming in and among that 1 will
be a full region scan. That should still make sense right? Among totalscan Rpc
requests how much are full region scans?
This is only for scans and not for gets. Should we include gets also - that
is generally with fixed start and stop row correct?
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]