You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "Esteban Gutierrez (JIRA)" <ji...@apache.org> on 2016/11/16 21:29:58 UTC
[jira] [Resolved] (HBASE-3975) NoServerForRegionException stalls
write pipeline
[ https://issues.apache.org/jira/browse/HBASE-3975?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Esteban Gutierrez resolved HBASE-3975.
--------------------------------------
Resolution: Fixed
The new async client is taking care of this.
> NoServerForRegionException stalls write pipeline
> ------------------------------------------------
>
> Key: HBASE-3975
> URL: https://issues.apache.org/jira/browse/HBASE-3975
> Project: HBase
> Issue Type: Bug
> Components: Client
> Affects Versions: 0.89.20100924, 0.90.3, 0.92.0
> Reporter: Nicolas Spiegelberg
> Assignee: Nicolas Spiegelberg
>
> When we process a batch of puts, the current algorithm basically goes like this:
> 1. Find all servers for the Put requests
> 2. Partition Puts by servers
> 3. Make requests
> 4. Collect success/error results
> If we throw an IOE in step 1 or 2, we will abort the whole batch operation. In our case, this was an NoServerForRegionException due to region rebalancing. However, the asynchronous put case normally has requests going to a wide variety of servers. We should fail all the put requests that throw an IOE in Step 1 but continue to try all the put requests that succeed at this stage.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)