Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-10070 HBase read high-availability using timeline-consistent region replicas
  3. HBASE-10630

NullPointerException in ConnectionManager$HConnectionImplementation.locateRegionInMeta() due to missing region info

VotersWatch issueWatchersLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Sub-task
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 0.99.0, hbase-10070
    • None
    • None
    • Reviewed

    Description

      During Load And Verify With Chaos Monkey test, we observed:

      2014-02-26 16:28:17,964|beaver.machine|INFO|2014-02-26 16:28:17,964 INFO  [main] mapreduce.Job:  map 71% reduce 0%
      2014-02-26 16:28:20,073|beaver.machine|INFO|2014-02-26 16:28:20,073 INFO  [main] mapreduce.Job:  map 82% reduce 0%
      2014-02-26 16:28:20,077|beaver.machine|INFO|2014-02-26 16:28:20,077 INFO  [main] mapreduce.Job: Task Id : attempt_1393409213482_0015_m_000068_0, Status : FAILED
      2014-02-26 16:28:20,099|beaver.machine|INFO|Error: java.lang.NullPointerException
      2014-02-26 16:28:20,100|beaver.machine|INFO|at org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.locateRegionInMeta(ConnectionManager.java:1175)
      2014-02-26 16:28:20,100|beaver.machine|INFO|at org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.locateRegion(ConnectionManager.java:1038)
      2014-02-26 16:28:20,100|beaver.machine|INFO|at org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.locateRegionAll(ConnectionManager.java:986)
      2014-02-26 16:28:20,101|beaver.machine|INFO|at org.apache.hadoop.hbase.client.AsyncProcess.findDestLocation(AsyncProcess.java:418)
      2014-02-26 16:28:20,101|beaver.machine|INFO|at org.apache.hadoop.hbase.client.AsyncProcess.submit(AsyncProcess.java:343)
      2014-02-26 16:28:20,101|beaver.machine|INFO|at org.apache.hadoop.hbase.client.AsyncProcess.submit(AsyncProcess.java:296)
      2014-02-26 16:28:20,102|beaver.machine|INFO|at org.apache.hadoop.hbase.client.HTable.backgroundFlushCommits(HTable.java:1024)
      2014-02-26 16:28:20,102|beaver.machine|INFO|at org.apache.hadoop.hbase.client.HTable.flushCommits(HTable.java:1298)
      2014-02-26 16:28:20,102|beaver.machine|INFO|at org.apache.hadoop.hbase.test.IntegrationTestLoadAndVerify$LoadMapper.cleanup(IntegrationTestLoadAndVerify.java:188)
      2014-02-26 16:28:20,102|beaver.machine|INFO|at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:148)
      2014-02-26 16:28:20,103|beaver.machine|INFO|at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:764)
      2014-02-26 16:28:20,103|beaver.machine|INFO|at org.apache.hadoop.mapred.MapTask.run(MapTask.java:340)
      2014-02-26 16:28:20,103|beaver.machine|INFO|at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:168)
      2014-02-26 16:28:20,103|beaver.machine|INFO|at java.security.AccessController.doPrivileged(Native Method)
      2014-02-26 16:28:20,104|beaver.machine|INFO|at javax.security.auth.Subject.doAs(Subject.java:396)
      2014-02-26 16:28:20,104|beaver.machine|INFO|at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1548)
      2014-02-26 16:28:20,104|beaver.machine|INFO|at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:163)
      2014-02-26 16:28:20,105|beaver.machine|INFO|
      2014-02-26 16:28:20,105|beaver.machine|INFO|Container killed by the ApplicationMaster.
      

      Here is related code:

                 // convert the row result into the HRegionLocation we need!
                 location = MetaReader.getRegionLocations(regionInfoRow);
                 HRegionInfo regionInfo = location.getRegionLocation().getRegionInfo();
                 if (regionInfo == null) {
                   throw new IOException("HRegionInfo was null or empty in " +
      

      null check should be performed against location and location.getRegionLocation().

      Attachments

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            yuzhihong@gmail.com Ted Yu
            yuzhihong@gmail.com Ted Yu
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment