HBase
  1. HBase
  2. HBASE-10137

GeneralBulkAssigner with retain assignment plan can be used in EnableTableHandler to bulk assign the regions

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 0.96.0, 0.94.14
    • Fix Version/s: 0.98.0, 0.96.2, 0.99.0
    • Component/s: Region Assignment
    • Labels:
      None
    • Hadoop Flags:
      Reviewed

      Description

      Current in BulkEnabler we are assigning one region at a time, instead we can use GeneralBulkAssigner to bulk assign multiple regions at a time.

            for (HRegionInfo region : regions) {
              if (assignmentManager.getRegionStates()
                  .isRegionInTransition(region)) {
                continue;
              }
              final HRegionInfo hri = region;
              pool.execute(Trace.wrap("BulkEnabler.populatePool",new Runnable() {
                public void run() {
                  assignmentManager.assign(hri, true);
                }
              }));
            }
      
      
      1. HBASE-10137_v2.patch
        19 kB
        rajeshbabu
      2. HBASE-10137_v3.patch
        10 kB
        rajeshbabu
      3. HBASE-10137.patch
        8 kB
        rajeshbabu

        Issue Links

          Activity

          Hide
          rajeshbabu added a comment -

          Patch for trunk. Please review.

          Show
          rajeshbabu added a comment - Patch for trunk. Please review.
          Hide
          Hadoop QA added a comment -

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

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

          +1 tests included. The patch appears to include 6 new or modified tests.

          +1 hadoop1.0. The patch compiles against the hadoop 1.0 profile.

          +1 hadoop1.1. The patch compiles against the hadoop 1.1 profile.

          +1 javadoc. The javadoc tool did not generate any warning messages.

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

          +1 findbugs. The patch does not introduce any new Findbugs (version 1.3.9) warnings.

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

          +1 lineLengths. The patch does not introduce lines longer than 100

          -1 site. The patch appears to cause mvn site goal to fail.

          +1 core tests. The patch passed unit tests in .

          Test results: https://builds.apache.org/job/PreCommit-HBASE-Build/8139//testReport/
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8139//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-protocol.html
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8139//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-thrift.html
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8139//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-client.html
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8139//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop2-compat.html
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8139//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-examples.html
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8139//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8139//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8139//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8139//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html
          Console output: https://builds.apache.org/job/PreCommit-HBASE-Build/8139//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/12618378/HBASE-10137.patch against trunk revision . +1 @author . The patch does not contain any @author tags. +1 tests included . The patch appears to include 6 new or modified tests. +1 hadoop1.0 . The patch compiles against the hadoop 1.0 profile. +1 hadoop1.1 . The patch compiles against the hadoop 1.1 profile. +1 javadoc . The javadoc tool did not generate any warning messages. +1 javac . The applied patch does not increase the total number of javac compiler warnings. +1 findbugs . The patch does not introduce any new Findbugs (version 1.3.9) warnings. +1 release audit . The applied patch does not increase the total number of release audit warnings. +1 lineLengths . The patch does not introduce lines longer than 100 -1 site . The patch appears to cause mvn site goal to fail. +1 core tests . The patch passed unit tests in . Test results: https://builds.apache.org/job/PreCommit-HBASE-Build/8139//testReport/ Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8139//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-protocol.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8139//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-thrift.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8139//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-client.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8139//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop2-compat.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8139//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-examples.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8139//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8139//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8139//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8139//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html Console output: https://builds.apache.org/job/PreCommit-HBASE-Build/8139//console This message is automatically generated.
          Hide
          rajeshbabu added a comment -

          It also solves HBASE-6469. Currently any assignment failures in ETH leaving the table state in ENABLING state until we restart master.
          In the patch passing waitTillAllAssigned parameter as true to GeneralBulkAssigner means we will wait until all regions completely assigned. This is mandatory in ETH otherwise some regions may not be assigned.

          BulkAssigner ba = new GeneralBulkAssigner(this.server, bulkPlan, this.assignmentManager, true);
          

          In case of any failures retrying assignments and wait in GeneralBulkAssigner#waitUntilDone.

              // We're not synchronizing on regionsInTransition now because we don't use any iterator.
              while (!regionSet.isEmpty() && !server.isStopped() && endTime > System.currentTimeMillis()) {
                Iterator<HRegionInfo> regionInfoIterator = regionSet.iterator();
                while (regionInfoIterator.hasNext()) {
                  HRegionInfo hri = regionInfoIterator.next();
                  if (regionStates.isRegionOnline(hri) || regionStates.isRegionInState(hri,
                      State.SPLITTING, State.SPLIT, State.MERGING, State.MERGED)) {
                    regionInfoIterator.remove();
                  }
                }
                if (!waitTillAllAssigned) {
                  // No need to wait, let assignment going on asynchronously
                  break;
                }
                if (!regionSet.isEmpty()) {
                  regionStates.waitForUpdate(100);
                }
              }
          

          But in case of BulkEnabler if region assignments take more time or failures we will timeout and leave the table state as ENABLING only.

          In disable table handler we are already retrying until all the regions completely closed. So there is no chance of table hang in DISABLING state case forever.

          Show
          rajeshbabu added a comment - It also solves HBASE-6469 . Currently any assignment failures in ETH leaving the table state in ENABLING state until we restart master. In the patch passing waitTillAllAssigned parameter as true to GeneralBulkAssigner means we will wait until all regions completely assigned. This is mandatory in ETH otherwise some regions may not be assigned. BulkAssigner ba = new GeneralBulkAssigner( this .server, bulkPlan, this .assignmentManager, true ); In case of any failures retrying assignments and wait in GeneralBulkAssigner#waitUntilDone. // We're not synchronizing on regionsInTransition now because we don't use any iterator. while (!regionSet.isEmpty() && !server.isStopped() && endTime > System .currentTimeMillis()) { Iterator<HRegionInfo> regionInfoIterator = regionSet.iterator(); while (regionInfoIterator.hasNext()) { HRegionInfo hri = regionInfoIterator.next(); if (regionStates.isRegionOnline(hri) || regionStates.isRegionInState(hri, State.SPLITTING, State.SPLIT, State.MERGING, State.MERGED)) { regionInfoIterator.remove(); } } if (!waitTillAllAssigned) { // No need to wait, let assignment going on asynchronously break ; } if (!regionSet.isEmpty()) { regionStates.waitForUpdate(100); } } But in case of BulkEnabler if region assignments take more time or failures we will timeout and leave the table state as ENABLING only. In disable table handler we are already retrying until all the regions completely closed. So there is no chance of table hang in DISABLING state case forever.
          Hide
          Ted Yu added a comment -

          lgtm

          For BaseLoadBalancer.java :

          -        ServerName target = localServers.get(RANDOM.nextInt(size));
          +        ServerName target =
          +            localServers.contains(oldServerName) ? oldServerName : localServers.get(RANDOM
          +                .nextInt(size));
          

          What is the purpose for the above change ?

          Show
          Ted Yu added a comment - lgtm For BaseLoadBalancer.java : - ServerName target = localServers.get(RANDOM.nextInt(size)); + ServerName target = + localServers.contains(oldServerName) ? oldServerName : localServers.get(RANDOM + .nextInt(size)); What is the purpose for the above change ?
          Hide
          Lars Hofhansl added a comment -

          I faintly remember some discussion that the bulk assigner should not be used in 0.94. Does anybody remember the details?

          Show
          Lars Hofhansl added a comment - I faintly remember some discussion that the bulk assigner should not be used in 0.94. Does anybody remember the details?
          Hide
          stack added a comment -

          Because it was written to be optimistic and that on fail, presumption was you'd be willing to start over.

          IIRC, Jimmy has fixed it up in trunk/0.96.

          Show
          stack added a comment - Because it was written to be optimistic and that on fail, presumption was you'd be willing to start over. IIRC, Jimmy has fixed it up in trunk/0.96.
          Hide
          Lars Hofhansl added a comment -

          Let's not do this in 0.94 then. I removed the 0.94 fix tag.

          Show
          Lars Hofhansl added a comment - Let's not do this in 0.94 then. I removed the 0.94 fix tag.
          Hide
          rajeshbabu added a comment -

          Ted Yu

          What is the purpose for the above change ?

          Without the change TestAdmin#testEnableTableRetainAssignment is failing. Because in test cases all servers have same host name and retainAssignment may give server with different port and start code(assertion will fail).

              for (Map.Entry<HRegionInfo, ServerName> entry : regions.entrySet()) {
                assertEquals(regions2.get(entry.getKey()), entry.getValue());
              }
          

          We can change test case to check for only hostnames,but in such case it will pass always.
          So I felt it's ok to select old server as destination if its in online servers. Is it ok?

          Show
          rajeshbabu added a comment - Ted Yu What is the purpose for the above change ? Without the change TestAdmin#testEnableTableRetainAssignment is failing. Because in test cases all servers have same host name and retainAssignment may give server with different port and start code(assertion will fail). for (Map.Entry<HRegionInfo, ServerName> entry : regions.entrySet()) { assertEquals(regions2.get(entry.getKey()), entry.getValue()); } We can change test case to check for only hostnames,but in such case it will pass always. So I felt it's ok to select old server as destination if its in online servers. Is it ok?
          Hide
          rajeshbabu added a comment -

          bq, Let's not do this in 0.94 then. I removed the 0.94 fix tag.
          Ok. No problem Lars.

          Show
          rajeshbabu added a comment - bq, Let's not do this in 0.94 then. I removed the 0.94 fix tag. Ok. No problem Lars.
          Hide
          Ted Yu added a comment -

          @Rajesh:
          I think it's Okay.

          Show
          Ted Yu added a comment - @Rajesh: I think it's Okay.
          Hide
          ramkrishna.s.vasudevan added a comment -

          As this is fixed in Trunk this change should be fine.
          +1 for being only on trunk.
          One quesiton is

          In case of any failures retrying assignments and wait in GeneralBulkAssigner#waitUntilDone.

          Yes this would happen now.
          But after disabled had happened before enabling, if a REgion server goes down and going with retainAssignment? how would this work?
          META may have the dead RS entry but the servermanager won't be giving the old ones. Will this be handled here?

          Show
          ramkrishna.s.vasudevan added a comment - As this is fixed in Trunk this change should be fine. +1 for being only on trunk. One quesiton is In case of any failures retrying assignments and wait in GeneralBulkAssigner#waitUntilDone. Yes this would happen now. But after disabled had happened before enabling, if a REgion server goes down and going with retainAssignment? how would this work? META may have the dead RS entry but the servermanager won't be giving the old ones. Will this be handled here?
          Hide
          rajeshbabu added a comment -

          @Ram,

          But after disabled had happened before enabling, if a REgion server goes down and going with retainAssignment? how would this work? META may have the dead RS entry but the servermanager won't be giving the old ones. Will this be handled here?

          If a region server is dead and no new RS started in the same host, then randomly one server from online servers(list from server manager) will be selected for the region. Its fine only.

                if (localServers.isEmpty()) {
                  // No servers on the new cluster match up with this hostname,
                  // assign randomly.
                  ServerName randomServer = servers.get(RANDOM.nextInt(servers.size()));
                  assignments.get(randomServer).add(region);
                  numRandomAssignments++;
          
          Show
          rajeshbabu added a comment - @Ram, But after disabled had happened before enabling, if a REgion server goes down and going with retainAssignment? how would this work? META may have the dead RS entry but the servermanager won't be giving the old ones. Will this be handled here? If a region server is dead and no new RS started in the same host, then randomly one server from online servers(list from server manager) will be selected for the region. Its fine only. if (localServers.isEmpty()) { // No servers on the new cluster match up with this hostname, // assign randomly. ServerName randomServer = servers.get(RANDOM.nextInt(servers.size())); assignments.get(randomServer).add(region); numRandomAssignments++;
          Hide
          ramkrishna.s.vasudevan added a comment -

          +1 on commit then.
          Jimmy Xiang
          Want to take a look before commit?

          Show
          ramkrishna.s.vasudevan added a comment - +1 on commit then. Jimmy Xiang Want to take a look before commit?
          Hide
          Jimmy Xiang added a comment -

          I was thinking about the same too, just haven't get a chance to do it. Good stuff. +1. Should we remove class BulkEnabler if not used any more?

          Show
          Jimmy Xiang added a comment - I was thinking about the same too, just haven't get a chance to do it. Good stuff. +1. Should we remove class BulkEnabler if not used any more?
          Hide
          rajeshbabu added a comment -

          Thanks Jimmy Xiang for review.
          With the patch it wont be used any more. I will remove it and upload new patch.

          Show
          rajeshbabu added a comment - Thanks Jimmy Xiang for review. With the patch it wont be used any more. I will remove it and upload new patch.
          Hide
          stack added a comment -

          Should we rename GeneralBulkEnable as BulkEnabler rather than just remove BulkEnabler (if a 'GeneralBulkEnabler', folks will go looking for a SpecialBulkEnablers, or SergeantBulkEnabler...)?

          Show
          stack added a comment - Should we rename GeneralBulkEnable as BulkEnabler rather than just remove BulkEnabler (if a 'GeneralBulkEnabler', folks will go looking for a SpecialBulkEnablers, or SergeantBulkEnabler...)?
          Hide
          rajeshbabu added a comment -

          In the patch removed BulkEnabler class in ETH and renamed GeneralBulkAssigner as BulkEnabler.

          Show
          rajeshbabu added a comment - In the patch removed BulkEnabler class in ETH and renamed GeneralBulkAssigner as BulkEnabler.
          Hide
          rajeshbabu added a comment -

          Jimmy Xiang is it fine to you?
          Thanks.

          Show
          rajeshbabu added a comment - Jimmy Xiang is it fine to you? Thanks.
          Hide
          Jimmy Xiang added a comment - - edited

          stack, do you mean GeneralBulkAssigner? There is no GeneralBulkEnabler. GeneralBulkAssigner is for assignment. The base class is called BulkAssigner. So we can't call it BulkAssigner again. Calling it BulkEnabler probably is not good either since it is not just enabling a table, compared to the original BulkEnabler, and the existing BulkDisabler.

          rajeshbabu, renaming GeneralBulkAssigner to BulkEnabler seems not so good. What other name can we use?

          Show
          Jimmy Xiang added a comment - - edited stack , do you mean GeneralBulkAssigner? There is no GeneralBulkEnabler. GeneralBulkAssigner is for assignment. The base class is called BulkAssigner. So we can't call it BulkAssigner again. Calling it BulkEnabler probably is not good either since it is not just enabling a table, compared to the original BulkEnabler, and the existing BulkDisabler. rajeshbabu , renaming GeneralBulkAssigner to BulkEnabler seems not so good. What other name can we use?
          Hide
          stack added a comment -

          Pardon me. I messed up. Please ignore my bad suggestion rajeshbabu. As Jimmy points out, I missed the Assigner suffix reading it as Enabler.

          Show
          stack added a comment - Pardon me. I messed up. Please ignore my bad suggestion rajeshbabu . As Jimmy points out, I missed the Assigner suffix reading it as Enabler.
          Hide
          rajeshbabu added a comment -

          NP stack As of now I will keep GeneralBulkAssigner as it is. Later if we find better name we can change it.

          Show
          rajeshbabu added a comment - NP stack As of now I will keep GeneralBulkAssigner as it is. Later if we find better name we can change it.
          Hide
          Hadoop QA added a comment -

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

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

          +1 tests included. The patch appears to include 6 new or modified tests.

          +1 hadoop1.0. The patch compiles against the hadoop 1.0 profile.

          +1 hadoop1.1. The patch compiles against the hadoop 1.1 profile.

          +1 javadoc. The javadoc tool did not generate any warning messages.

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

          +1 findbugs. The patch does not introduce any new Findbugs (version 1.3.9) warnings.

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

          +1 lineLengths. The patch does not introduce lines longer than 100

          -1 site. The patch appears to cause mvn site goal to fail.

          -1 core tests. The patch failed these unit tests:
          org.apache.hadoop.hbase.regionserver.wal.TestLogRolling

          Test results: https://builds.apache.org/job/PreCommit-HBASE-Build/8199//testReport/
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8199//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-protocol.html
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8199//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-thrift.html
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8199//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-client.html
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8199//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop2-compat.html
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8199//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-examples.html
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8199//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8199//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8199//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8199//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html
          Console output: https://builds.apache.org/job/PreCommit-HBASE-Build/8199//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/12619037/HBASE-10137_v2.patch against trunk revision . +1 @author . The patch does not contain any @author tags. +1 tests included . The patch appears to include 6 new or modified tests. +1 hadoop1.0 . The patch compiles against the hadoop 1.0 profile. +1 hadoop1.1 . The patch compiles against the hadoop 1.1 profile. +1 javadoc . The javadoc tool did not generate any warning messages. +1 javac . The applied patch does not increase the total number of javac compiler warnings. +1 findbugs . The patch does not introduce any new Findbugs (version 1.3.9) warnings. +1 release audit . The applied patch does not increase the total number of release audit warnings. +1 lineLengths . The patch does not introduce lines longer than 100 -1 site . The patch appears to cause mvn site goal to fail. -1 core tests . The patch failed these unit tests: org.apache.hadoop.hbase.regionserver.wal.TestLogRolling Test results: https://builds.apache.org/job/PreCommit-HBASE-Build/8199//testReport/ Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8199//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-protocol.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8199//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-thrift.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8199//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-client.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8199//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop2-compat.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8199//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-examples.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8199//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8199//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8199//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8199//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html Console output: https://builds.apache.org/job/PreCommit-HBASE-Build/8199//console This message is automatically generated.
          Hide
          rajeshbabu added a comment -

          In the patch removed unused BulkEnabler class.

          Show
          rajeshbabu added a comment - In the patch removed unused BulkEnabler class.
          Hide
          Hadoop QA added a comment -

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

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

          +1 tests included. The patch appears to include 6 new or modified tests.

          +1 hadoop1.0. The patch compiles against the hadoop 1.0 profile.

          +1 hadoop1.1. The patch compiles against the hadoop 1.1 profile.

          +1 javadoc. The javadoc tool did not generate any warning messages.

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

          +1 findbugs. The patch does not introduce any new Findbugs (version 1.3.9) warnings.

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

          +1 lineLengths. The patch does not introduce lines longer than 100

          -1 site. The patch appears to cause mvn site goal to fail.

          +1 core tests. The patch passed unit tests in .

          Test results: https://builds.apache.org/job/PreCommit-HBASE-Build/8201//testReport/
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8201//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-protocol.html
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8201//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-thrift.html
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8201//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-client.html
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8201//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop2-compat.html
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8201//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-examples.html
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8201//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8201//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8201//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html
          Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8201//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html
          Console output: https://builds.apache.org/job/PreCommit-HBASE-Build/8201//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/12619051/HBASE-10137_v3.patch against trunk revision . +1 @author . The patch does not contain any @author tags. +1 tests included . The patch appears to include 6 new or modified tests. +1 hadoop1.0 . The patch compiles against the hadoop 1.0 profile. +1 hadoop1.1 . The patch compiles against the hadoop 1.1 profile. +1 javadoc . The javadoc tool did not generate any warning messages. +1 javac . The applied patch does not increase the total number of javac compiler warnings. +1 findbugs . The patch does not introduce any new Findbugs (version 1.3.9) warnings. +1 release audit . The applied patch does not increase the total number of release audit warnings. +1 lineLengths . The patch does not introduce lines longer than 100 -1 site . The patch appears to cause mvn site goal to fail. +1 core tests . The patch passed unit tests in . Test results: https://builds.apache.org/job/PreCommit-HBASE-Build/8201//testReport/ Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8201//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-protocol.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8201//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-thrift.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8201//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-client.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8201//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop2-compat.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8201//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-examples.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8201//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8201//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8201//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/8201//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html Console output: https://builds.apache.org/job/PreCommit-HBASE-Build/8201//console This message is automatically generated.
          Hide
          Jimmy Xiang added a comment -

          +1 on v3.

          Show
          Jimmy Xiang added a comment - +1 on v3.
          Hide
          rajeshbabu added a comment -

          Same patch can be applied to all the fix versions.
          Committed to trunk, 0.98 and 0.96 as well.
          Thanks all for the reviews.

          Show
          rajeshbabu added a comment - Same patch can be applied to all the fix versions. Committed to trunk, 0.98 and 0.96 as well. Thanks all for the reviews.
          Hide
          Hudson added a comment -

          FAILURE: Integrated in hbase-0.96-hadoop2 #153 (See https://builds.apache.org/job/hbase-0.96-hadoop2/153/)
          HBASE-10137 GeneralBulkAssigner with retain assignment plan can be used in EnableTableHandler to bulk assign the regions (rajeshbabu: rev 1551799)

          • /hbase/branches/0.96/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java
          • /hbase/branches/0.96/hbase-server/src/main/java/org/apache/hadoop/hbase/master/GeneralBulkAssigner.java
          • /hbase/branches/0.96/hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.java
          • /hbase/branches/0.96/hbase-server/src/main/java/org/apache/hadoop/hbase/master/handler/EnableTableHandler.java
          • /hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAdmin.java
          • /hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManager.java
          Show
          Hudson added a comment - FAILURE: Integrated in hbase-0.96-hadoop2 #153 (See https://builds.apache.org/job/hbase-0.96-hadoop2/153/ ) HBASE-10137 GeneralBulkAssigner with retain assignment plan can be used in EnableTableHandler to bulk assign the regions (rajeshbabu: rev 1551799) /hbase/branches/0.96/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java /hbase/branches/0.96/hbase-server/src/main/java/org/apache/hadoop/hbase/master/GeneralBulkAssigner.java /hbase/branches/0.96/hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.java /hbase/branches/0.96/hbase-server/src/main/java/org/apache/hadoop/hbase/master/handler/EnableTableHandler.java /hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAdmin.java /hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManager.java
          Hide
          Hudson added a comment -

          SUCCESS: Integrated in HBase-0.98-on-Hadoop-1.1 #16 (See https://builds.apache.org/job/HBase-0.98-on-Hadoop-1.1/16/)
          HBASE-10137 GeneralBulkAssigner with retain assignment plan can be used in EnableTableHandler to bulk assign the regions (rajeshbabu: rev 1551798)

          • /hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java
          • /hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/master/GeneralBulkAssigner.java
          • /hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.java
          • /hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/master/handler/EnableTableHandler.java
          • /hbase/branches/0.98/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAdmin.java
          • /hbase/branches/0.98/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManager.java
          Show
          Hudson added a comment - SUCCESS: Integrated in HBase-0.98-on-Hadoop-1.1 #16 (See https://builds.apache.org/job/HBase-0.98-on-Hadoop-1.1/16/ ) HBASE-10137 GeneralBulkAssigner with retain assignment plan can be used in EnableTableHandler to bulk assign the regions (rajeshbabu: rev 1551798) /hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java /hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/master/GeneralBulkAssigner.java /hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.java /hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/master/handler/EnableTableHandler.java /hbase/branches/0.98/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAdmin.java /hbase/branches/0.98/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManager.java
          Hide
          Hudson added a comment -

          FAILURE: Integrated in HBase-TRUNK #4734 (See https://builds.apache.org/job/HBase-TRUNK/4734/)
          HBASE-10137 GeneralBulkAssigner with retain assignment plan can be used in EnableTableHandler to bulk assign the regions (rajeshbabu: rev 1551797)

          • /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java
          • /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/GeneralBulkAssigner.java
          • /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.java
          • /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/handler/EnableTableHandler.java
          • /hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAdmin.java
          • /hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManager.java
          Show
          Hudson added a comment - FAILURE: Integrated in HBase-TRUNK #4734 (See https://builds.apache.org/job/HBase-TRUNK/4734/ ) HBASE-10137 GeneralBulkAssigner with retain assignment plan can be used in EnableTableHandler to bulk assign the regions (rajeshbabu: rev 1551797) /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/GeneralBulkAssigner.java /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.java /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/handler/EnableTableHandler.java /hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAdmin.java /hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManager.java
          Hide
          Hudson added a comment -

          FAILURE: Integrated in HBase-0.98 #20 (See https://builds.apache.org/job/HBase-0.98/20/)
          HBASE-10137 GeneralBulkAssigner with retain assignment plan can be used in EnableTableHandler to bulk assign the regions (rajeshbabu: rev 1551798)

          • /hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java
          • /hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/master/GeneralBulkAssigner.java
          • /hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.java
          • /hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/master/handler/EnableTableHandler.java
          • /hbase/branches/0.98/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAdmin.java
          • /hbase/branches/0.98/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManager.java
          Show
          Hudson added a comment - FAILURE: Integrated in HBase-0.98 #20 (See https://builds.apache.org/job/HBase-0.98/20/ ) HBASE-10137 GeneralBulkAssigner with retain assignment plan can be used in EnableTableHandler to bulk assign the regions (rajeshbabu: rev 1551798) /hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java /hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/master/GeneralBulkAssigner.java /hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.java /hbase/branches/0.98/hbase-server/src/main/java/org/apache/hadoop/hbase/master/handler/EnableTableHandler.java /hbase/branches/0.98/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAdmin.java /hbase/branches/0.98/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManager.java
          Hide
          Hudson added a comment -

          SUCCESS: Integrated in hbase-0.96 #232 (See https://builds.apache.org/job/hbase-0.96/232/)
          HBASE-10137 GeneralBulkAssigner with retain assignment plan can be used in EnableTableHandler to bulk assign the regions (rajeshbabu: rev 1551799)

          • /hbase/branches/0.96/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java
          • /hbase/branches/0.96/hbase-server/src/main/java/org/apache/hadoop/hbase/master/GeneralBulkAssigner.java
          • /hbase/branches/0.96/hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.java
          • /hbase/branches/0.96/hbase-server/src/main/java/org/apache/hadoop/hbase/master/handler/EnableTableHandler.java
          • /hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAdmin.java
          • /hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManager.java
          Show
          Hudson added a comment - SUCCESS: Integrated in hbase-0.96 #232 (See https://builds.apache.org/job/hbase-0.96/232/ ) HBASE-10137 GeneralBulkAssigner with retain assignment plan can be used in EnableTableHandler to bulk assign the regions (rajeshbabu: rev 1551799) /hbase/branches/0.96/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java /hbase/branches/0.96/hbase-server/src/main/java/org/apache/hadoop/hbase/master/GeneralBulkAssigner.java /hbase/branches/0.96/hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.java /hbase/branches/0.96/hbase-server/src/main/java/org/apache/hadoop/hbase/master/handler/EnableTableHandler.java /hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAdmin.java /hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManager.java
          Hide
          Hudson added a comment -

          FAILURE: Integrated in HBase-TRUNK-on-Hadoop-1.1 #10 (See https://builds.apache.org/job/HBase-TRUNK-on-Hadoop-1.1/10/)
          HBASE-10137 GeneralBulkAssigner with retain assignment plan can be used in EnableTableHandler to bulk assign the regions (rajeshbabu: rev 1551797)

          • /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java
          • /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/GeneralBulkAssigner.java
          • /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.java
          • /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/handler/EnableTableHandler.java
          • /hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAdmin.java
          • /hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManager.java
          Show
          Hudson added a comment - FAILURE: Integrated in HBase-TRUNK-on-Hadoop-1.1 #10 (See https://builds.apache.org/job/HBase-TRUNK-on-Hadoop-1.1/10/ ) HBASE-10137 GeneralBulkAssigner with retain assignment plan can be used in EnableTableHandler to bulk assign the regions (rajeshbabu: rev 1551797) /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/GeneralBulkAssigner.java /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.java /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/handler/EnableTableHandler.java /hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAdmin.java /hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManager.java

            People

            • Assignee:
              rajeshbabu
              Reporter:
              rajeshbabu
            • Votes:
              0 Vote for this issue
              Watchers:
              12 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development