Uploaded image for project: 'Hadoop HDFS'
  1. Hadoop HDFS
  2. HDFS-6348

SecondaryNameNode not terminating properly on runtime exceptions

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 2.3.0
    • Fix Version/s: 2.8.0, 3.0.0-alpha1
    • Component/s: namenode
    • Labels:
      None
    • Target Version/s:
    • Hadoop Flags:
      Reviewed

      Description

      Secondary Namenode is not exiting when there is RuntimeException occurred during startup.

      Say I configured wrong configuration, due to that validation failed and thrown RuntimeException as shown below. But when I check the environment SecondaryNamenode process is alive. When analysed, RMI Thread is still alive, since it is not a daemon thread JVM is nit exiting.

      I'm attaching threaddump to this JIRA for more details about the thread.

      java.lang.RuntimeException: java.lang.RuntimeException: java.lang.ClassNotFoundException: Class com.huawei.hadoop.hdfs.server.blockmanagement.MyBlockPlacementPolicy not found
      	at org.apache.hadoop.conf.Configuration.getClass(Configuration.java:1900)
      	at org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicy.getInstance(BlockPlacementPolicy.java:199)
      	at org.apache.hadoop.hdfs.server.blockmanagement.BlockManager.<init>(BlockManager.java:256)
      	at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.<init>(FSNamesystem.java:635)
      	at org.apache.hadoop.hdfs.server.namenode.SecondaryNameNode.initialize(SecondaryNameNode.java:260)
      	at org.apache.hadoop.hdfs.server.namenode.SecondaryNameNode.<init>(SecondaryNameNode.java:205)
      	at org.apache.hadoop.hdfs.server.namenode.SecondaryNameNode.main(SecondaryNameNode.java:695)
      Caused by: java.lang.RuntimeException: java.lang.ClassNotFoundException: Class com.huawei.hadoop.hdfs.server.blockmanagement.MyBlockPlacementPolicy not found
      	at org.apache.hadoop.conf.Configuration.getClass(Configuration.java:1868)
      	at org.apache.hadoop.conf.Configuration.getClass(Configuration.java:1892)
      	... 6 more
      Caused by: java.lang.ClassNotFoundException: Class com.huawei.hadoop.hdfs.server.blockmanagement.MyBlockPlacementPolicy not found
      	at org.apache.hadoop.conf.Configuration.getClassByName(Configuration.java:1774)
      	at org.apache.hadoop.conf.Configuration.getClass(Configuration.java:1866)
      	... 7 more
      2014-05-07 14:27:04,666 INFO org.apache.hadoop.hdfs.server.namenode.FSNamesystem: Stopping services started for active state
      2014-05-07 14:27:04,666 INFO org.apache.hadoop.hdfs.server.namenode.FSNamesystem: Stopping services started for standby state
      2014-05-07 14:31:04,926 INFO org.apache.hadoop.hdfs.server.namenode.SecondaryNameNode: STARTUP_MSG: 
      

        Attachments

        1. HDFS-6348.patch
          2 kB
          Rakesh R
        2. HDFS-6348.patch
          2 kB
          Rakesh R
        3. HDFS-6348-003.patch
          2 kB
          Rakesh R
        4. HDFS-6348-004.patch
          4 kB
          Rakesh R
        5. secondaryNN_threaddump_after_exit.log
          8 kB
          Rakesh R

          Activity

            People

            • Assignee:
              rakeshr Rakesh R
              Reporter:
              rakeshr Rakesh R
            • Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: