You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Andrew Purtell (JIRA)" <ji...@apache.org> on 2015/04/11 03:28:13 UTC
[jira] [Resolved] (HBASE-5859) Optimize the rolling restart script
[ https://issues.apache.org/jira/browse/HBASE-5859?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andrew Purtell resolved HBASE-5859.
-----------------------------------
Resolution: Not A Problem
> Optimize the rolling restart script
> -----------------------------------
>
> Key: HBASE-5859
> URL: https://issues.apache.org/jira/browse/HBASE-5859
> Project: HBase
> Issue Type: Improvement
> Components: regionserver, scripts
> Affects Versions: 0.95.2
> Reporter: Nicolas Liochon
> Priority: Minor
>
> There is a graceful_stop script. This algorithm:
> {noformat}
> for i = 0 to servers.size {
> regionsInServer = servers[i].regions
> move servers[i].regions to random
> stop servers[i]
> start servers[i]
> move regionsInServer to servers[i] //filled back with the same regions
> }
> {noformat}
> It would be possible to optimize it while keeping data locality with
> {noformat}
> for i = 0 to servers.size {
> start servers[i*2+1] on the computer of servers[i] // Two RS on the same box
> move servers[i].regions to servers[i*2+1] // The one on the same box
> stop servers[i]
> }
> {noformat}
> There would be an impact with a fixed port configuration. To fix this, we could:
> - use a range of port instead of a single port. This could be an issue for the web port.
> - start on a port then reuse the fixed ones when they become available. This is not very elegant if a client code is already using the previous code. Moreover the region server code is written in the meta table.
> - do a mix of the two solutions: a range for the server itself, while waiting for the web port to be available.
> To be discussed...
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)