You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Zhihong Yu (Assigned) (JIRA)" <ji...@apache.org> on 2012/02/22 22:43:48 UTC
[jira] [Assigned] (HBASE-5425) Punt on the timeout doesn't work in
BulkEnabler#waitUntilDone (master's EnableTableHandler)
[ https://issues.apache.org/jira/browse/HBASE-5425?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Zhihong Yu reassigned HBASE-5425:
---------------------------------
Assignee: terry zhang
> Punt on the timeout doesn't work in BulkEnabler#waitUntilDone (master's EnableTableHandler)
> --------------------------------------------------------------------------------------------
>
> Key: HBASE-5425
> URL: https://issues.apache.org/jira/browse/HBASE-5425
> Project: HBase
> Issue Type: Bug
> Components: master
> Affects Versions: 0.90.5, 0.92.0
> Reporter: terry zhang
> Assignee: terry zhang
> Fix For: 0.94.0
>
> Attachments: HBASE-5425.patch
>
>
> please take a look at the code below in EnableTableHandler(hbase master):
> {code:title=EnableTableHandler.java|borderStyle=solid}
> protected boolean waitUntilDone(long timeout)
> throws InterruptedException {
>
> .....
> int lastNumberOfRegions = this.countOfRegionsInTable;
> while (!server.isStopped() && remaining > 0) {
> Thread.sleep(waitingTimeForEvents);
> regions = assignmentManager.getRegionsOfTable(tableName);
> if (isDone(regions)) break;
> // Punt on the timeout as long we make progress
> if (regions.size() > lastNumberOfRegions) {
> lastNumberOfRegions = regions.size();
> timeout += waitingTimeForEvents;
> }
> remaining = timeout - (System.currentTimeMillis() - startTime);
> ....
> }
> private boolean isDone(final List<HRegionInfo> regions) {
> return regions != null && regions.size() >= this.countOfRegionsInTable;
> }
> {code}
> We can easily find out if we let lastNumberOfRegions = this.countOfRegionsInTable , the function of punt on timeout code will never be executed. I think initlize lastNumberOfRegions = 0 can make it work.
--
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