[ 
https://issues.apache.org/jira/browse/HBASE-18006?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16022981#comment-16022981
 ] 

Zheng Hu commented on HBASE-18006:
----------------------------------

The javadoc said that: 

{code}
  /**
   * Move the region <code>r</code> to <code>dest</code>.
   *
   * @param encodedRegionName The encoded region name; i.e. the hash that makes 
up the region name
   * suffix: e.g. if regionname is
   * 
<code>TestTable,0094429456,1289497600452.527db22f95c8a9e0116f0cc13c680396.</code>,
   * then the encoded region name is: 
<code>527db22f95c8a9e0116f0cc13c680396</code>.
   * @param destServerName The servername of the destination regionserver.  If 
passed the empty byte
   * array we'll assign to a random server.  A server name is made of host, 
port and startcode.
   * Here is an example: <code> host187.example.com,60020,1289493121758</code>
   * @throws IOException if we can't find a region named
   * <code>encodedRegionName</code>
   */
  void move(final byte[] encodedRegionName, final byte[] destServerName)
      throws IOException;
{code}

So , we can only pass a encodedRegionName to HBaseAdmin.move() method.   In our 
HBaseAdmin , some API accept encodedRegionName only ,  some API need 
fullRegionName only , some API accept both encodedRegionName and fulRegionName 
,  It really confused me sometime.  :(

Anyway,  it's not a bug, so I closed the issue. 

> AsyncClientScanner does not retry openScan RPCs
> -----------------------------------------------
>
>                 Key: HBASE-18006
>                 URL: https://issues.apache.org/jira/browse/HBASE-18006
>             Project: HBase
>          Issue Type: Bug
>            Reporter: Enis Soztutar
>            Priority: Critical
>             Fix For: 2.0.0
>
>         Attachments: hbase-18006-test.patch
>
>
> I have been reading the code for the new async scan paths excessively, and 
> noticed that there is a problem in the retrying layer for openScan RPCs. 
> In AsyncClientScanner#callOpenScanner() we are doing a open scan RPC. The 
> retrying logic comes from using the single rpc retrying caller in 
> openScanner(). However, we have the logic for failing the scanner if any of 
> the RPC calls here: 
> {code}
>       stub.scan(controller, request, resp -> {
>         if (controller.failed()) {
>           future.completeExceptionally(controller.getFailed());
>           return;
>         }
>         future.complete(new OpenScannerResponse(loc, isRegionServerRemote, 
> stub, controller, resp));
>       });
> {code}
> So, if the open scan gets an UnknownScannerException or something, instead of 
> retrying, it just fails the whole scan. 
> [~Apache9] FYI. 



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to