nkeywal created HBASE-5859: ------------------------------ Summary: 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.96.0 Reporter: nkeywal 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 is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira