HBase
  1. HBase
  2. HBASE-5425

Punt on the timeout doesn't work in BulkEnabler#waitUntilDone (master's EnableTableHandler)

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 0.90.5, 0.92.0
    • Fix Version/s: 0.94.0
    • Component/s: master
    • Labels:
      None
    • Hadoop Flags:
      Reviewed

      Description

      please take a look at the code below in EnableTableHandler(hbase master):

      EnableTableHandler.java
      
          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;
          }
      
      

      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.

      1. HBASE-5425.patch
        0.7 kB
        terry zhang

        Activity

        Hide
        Hadoop QA added a comment -

        -1 overall. Here are the results of testing the latest attachment
        http://issues.apache.org/jira/secure/attachment/12514958/HBASE-5425.patch
        against trunk revision .

        +1 @author. The patch does not contain any @author tags.

        -1 tests included. The patch doesn't appear to include any new or modified tests.
        Please justify why no new tests are needed for this patch.
        Also please list what manual steps were performed to verify this patch.

        -1 javadoc. The javadoc tool appears to have generated -136 warning messages.

        +1 javac. The applied patch does not increase the total number of javac compiler warnings.

        -1 findbugs. The patch appears to introduce 157 new Findbugs (version 1.3.9) warnings.

        +1 release audit. The applied patch does not increase the total number of release audit warnings.

        -1 core tests. The patch failed these unit tests:
        org.apache.hadoop.hbase.mapreduce.TestImportTsv
        org.apache.hadoop.hbase.mapred.TestTableMapReduce
        org.apache.hadoop.hbase.mapreduce.TestHFileOutputFormat

        Test results: https://builds.apache.org/job/PreCommit-HBASE-Build/979//testReport/
        Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/979//artifact/trunk/patchprocess/newPatchFindbugsWarnings.html
        Console output: https://builds.apache.org/job/PreCommit-HBASE-Build/979//console

        This message is automatically generated.

        Show
        Hadoop QA added a comment - -1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12514958/HBASE-5425.patch against trunk revision . +1 @author. The patch does not contain any @author tags. -1 tests included. The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch. -1 javadoc. The javadoc tool appears to have generated -136 warning messages. +1 javac. The applied patch does not increase the total number of javac compiler warnings. -1 findbugs. The patch appears to introduce 157 new Findbugs (version 1.3.9) warnings. +1 release audit. The applied patch does not increase the total number of release audit warnings. -1 core tests. The patch failed these unit tests: org.apache.hadoop.hbase.mapreduce.TestImportTsv org.apache.hadoop.hbase.mapred.TestTableMapReduce org.apache.hadoop.hbase.mapreduce.TestHFileOutputFormat Test results: https://builds.apache.org/job/PreCommit-HBASE-Build/979//testReport/ Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/979//artifact/trunk/patchprocess/newPatchFindbugsWarnings.html Console output: https://builds.apache.org/job/PreCommit-HBASE-Build/979//console This message is automatically generated.
        Hide
        stack added a comment -

        Committed to trunk. Thanks for the patch Terry.

        Show
        stack added a comment - Committed to trunk. Thanks for the patch Terry.
        Hide
        stack added a comment -

        Committed to 0.92 branch too.

        Show
        stack added a comment - Committed to 0.92 branch too.
        Hide
        Hudson added a comment -

        Integrated in HBase-0.92 #286 (See https://builds.apache.org/job/HBase-0.92/286/)
        HBASE-5425 Punt on the timeout doesn't work in BulkEnabler#waitUntilDone (master's EnableTableHandler) (Revision 1245676)

        Result = SUCCESS
        stack :
        Files :

        • /hbase/branches/0.92/CHANGES.txt
        • /hbase/branches/0.92/src/main/java/org/apache/hadoop/hbase/master/handler/EnableTableHandler.java
        Show
        Hudson added a comment - Integrated in HBase-0.92 #286 (See https://builds.apache.org/job/HBase-0.92/286/ ) HBASE-5425 Punt on the timeout doesn't work in BulkEnabler#waitUntilDone (master's EnableTableHandler) (Revision 1245676) Result = SUCCESS stack : Files : /hbase/branches/0.92/CHANGES.txt /hbase/branches/0.92/src/main/java/org/apache/hadoop/hbase/master/handler/EnableTableHandler.java
        Hide
        Hudson added a comment -

        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
        Show
        Hudson added a comment - 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
        Hide
        Hudson added a comment -

        Integrated in HBase-TRUNK #2665 (See https://builds.apache.org/job/HBase-TRUNK/2665/)
        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
        Show
        Hudson added a comment - Integrated in HBase-TRUNK #2665 (See https://builds.apache.org/job/HBase-TRUNK/2665/ ) 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
        Hide
        Hudson added a comment -

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

        Result = FAILURE
        stack :
        Files :

        • /hbase/branches/0.92/CHANGES.txt
        • /hbase/branches/0.92/src/main/java/org/apache/hadoop/hbase/master/handler/EnableTableHandler.java
        Show
        Hudson added a comment - Integrated in HBase-0.92-security #91 (See https://builds.apache.org/job/HBase-0.92-security/91/ ) HBASE-5425 Punt on the timeout doesn't work in BulkEnabler#waitUntilDone (master's EnableTableHandler) (Revision 1245676) Result = FAILURE stack : Files : /hbase/branches/0.92/CHANGES.txt /hbase/branches/0.92/src/main/java/org/apache/hadoop/hbase/master/handler/EnableTableHandler.java

          People

          • Assignee:
            terry zhang
            Reporter:
            terry zhang
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development