hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Enis Soztutar (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HBASE-18006) AsyncClientScanner does not retry openScan RPCs
Date Fri, 05 May 2017 23:26:04 GMT

     [ https://issues.apache.org/jira/browse/HBASE-18006?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

Enis Soztutar updated HBASE-18006:
    Attachment: hbase-18006-test.patch

Just attaching a demonstration patch which causes the test to fail. It does a move region
after caching the region so that the openScanner() RPC call gets a {{UnknownRegionException}}.

I think I know how to fix it, let me attempt a full patch next week. 

> 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,
>       });
> {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

View raw message