[ 
https://issues.apache.org/jira/browse/HBASE-5425?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13210830#comment-13210830
 ] 

Hudson commented on HBASE-5425:
-------------------------------

Integrated in HBase-TRUNK-security #114 (See 
[https://builds.apache.org/job/HBase-TRUNK-security/114/])
    HBASE-5425 Punt on the timeout doesn't work in BulkEnabler#waitUntilDone 
(master's EnableTableHandler) (Revision 1245674)

     Result = FAILURE
stack : 
Files : 
* 
/hbase/trunk/src/main/java/org/apache/hadoop/hbase/master/handler/EnableTableHandler.java

                
>  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
>             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

        

Reply via email to