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

namenode doesn't start if group id cannot be resolved to name

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Minor
    • Resolution: Duplicate
    • None
    • None
    • None
    • None

    Description

      Namenode failes to start because unix group name for my user can't be got. First, system threw rather obscure message:

      ERROR dfs.NameNode (NameNode.java:main(856)) - java.lang.NullPointerException
      at org.apache.hadoop.dfs.FSNamesystem.close(FSNamesystem.java:428)
      at org.apache.hadoop.dfs.FSNamesystem.<init>(FSNamesystem.java:237)
      at org.apache.hadoop.dfs.NameNode.initialize(NameNode.java:130)
      at org.apache.hadoop.dfs.NameNode.<init>(NameNode.java:175)
      at org.apache.hadoop.dfs.NameNode.<init>(NameNode.java:161)
      at org.apache.hadoop.dfs.NameNode.createNameNode(NameNode.java:843)
      at org.apache.hadoop.dfs.NameNode.main(NameNode.java:852)

      I traversed through stack trace entries, and found (FSNamesystem:237) this code

      233 FSNamesystem(NameNode nn, Configuration conf) throws IOException {
      234 try

      Unknown macro: { 235 initialize(nn, conf); 236 }

      catch(IOException e)

      Unknown macro: { 237 close(); 238 throw e; 239 }

      240 }

      Inserting e.printStackTrace() gave me next

      dfs.NameNodeMetrics (NameNodeMetrics.java:<init>(76)) - Initializing NameNodeMeterics using context object:org.apache.hadoop.metrics.spi.NullContext
      java.io.IOException: javax.security.auth.login.LoginException: Login failed: id: cannot find name for group ID 1040

      at org.apache.hadoop.security.UnixUserGroupInformation.login(UnixUserGroupInformation.java:250)
      at org.apache.hadoop.security.UnixUserGroupInformation.login(UnixUserGroupInformation.java:268)
      at org.apache.hadoop.dfs.FSNamesystem.setConfigurationParameters(FSNamesystem.java:330)
      at org.apache.hadoop.dfs.FSNamesystem.initialize(FSNamesystem.java:249)
      at org.apache.hadoop.dfs.FSNamesystem.<init>(FSNamesystem.java:235)
      at org.apache.hadoop.dfs.NameNode.initialize(NameNode.java:130)
      at org.apache.hadoop.dfs.NameNode.<init>(NameNode.java:175)
      at org.apache.hadoop.dfs.NameNode.<init>(NameNode.java:161)
      at org.apache.hadoop.dfs.NameNode.createNameNode(NameNode.java:843)
      at org.apache.hadoop.dfs.NameNode.main(NameNode.java:852)

      at org.apache.hadoop.dfs.FSNamesystem.setConfigurationParameters(FSNamesystem.java:332)
      at org.apache.hadoop.dfs.FSNamesystem.initialize(FSNamesystem.java:249)
      at org.apache.hadoop.dfs.FSNamesystem.<init>(FSNamesystem.java:235)
      at org.apache.hadoop.dfs.NameNode.initialize(NameNode.java:130)
      at org.apache.hadoop.dfs.NameNode.<init>(NameNode.java:175)
      at org.apache.hadoop.dfs.NameNode.<init>(NameNode.java:161)
      at org.apache.hadoop.dfs.NameNode.createNameNode(NameNode.java:843)
      at org.apache.hadoop.dfs.NameNode.main(NameNode.java:852)

      And this is true - command "groups" returns the same - id: cannot find name for group ID 1040.

      Attachments

        1. groupname.patch
          0.7 kB
          Patrick Winters

        Issue Links

          Activity

            People

              patrick.winters Patrick Winters
              gudok Andrei Gudkov
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: