Amend HBASE-18000 Make sure we always return the scanner id with ScanResponse 
(Karan Mehta and Duo Zhang)

Move getRegionScanner() call below builder.setScannerId() to handle a
corner case.

Conflicts:
        
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/5cbc041b
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/5cbc041b
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/5cbc041b

Branch: refs/heads/branch-1.3
Commit: 5cbc041b970be90c8938e136003a58f6829cf451
Parents: 80d7d1a
Author: Andrew Purtell <apurt...@apache.org>
Authored: Thu May 11 14:34:04 2017 -0700
Committer: Andrew Purtell <apurt...@apache.org>
Committed: Thu May 11 14:39:12 2017 -0700

----------------------------------------------------------------------
 .../java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/5cbc041b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java
----------------------------------------------------------------------
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java
index 9f311d6..d3d64c8 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java
@@ -2747,11 +2747,11 @@ public class RSRpcServices implements 
HBaseRPCErrorHandler,
     boolean isSmallScan;
     try {
       if (request.hasScannerId()) {
-        rsh = getRegionScanner(request);
-        isSmallScan = false;
         // The downstream projects such as AsyncHBase in OpenTSDB need this 
value. See HBASE-18000
         // for more details.
         builder.setScannerId(request.getScannerId());
+        rsh = getRegionScanner(request);
+        isSmallScan = false;
       } else {
         Pair<RegionScannerHolder, Boolean> pair = newRegionScanner(request, 
builder);
         rsh = pair.getFirst();

Reply via email to