Danilo Vunjak created HDFS-6597:
-----------------------------------

             Summary: New option for namenode upgrade
                 Key: HDFS-6597
                 URL: https://issues.apache.org/jira/browse/HDFS-6597
             Project: Hadoop HDFS
          Issue Type: Improvement
          Components: namenode
            Reporter: Danilo Vunjak
         Attachments: JIRA-HDFS-30.patch

Currently when namenode is started for upgrade (hadoop namenode -upgrade 
command), after finishing upgrade of metadata, namenode starts working normally 
and wait for datanodes to upgrade itself and connect to to NN. We need to have 
option for upgrading only NN metadata, so after upgrade is finished on NN, 
process should terminate.

I have tested it by changing in file: hdfs.server.namenode.NameNode.java, 
method: public static NameNode createNameNode(String argv[], Configuration 
conf):
 in switch added
 case UPGRADE:
case UPGRADE:
      {
          DefaultMetricsSystem.initialize("NameNode");
          NameNode nameNode = new NameNode(conf);
          if (startOpt.getForceUpgrade()) {
                  terminate(0);
                  return null;
          }
          
          return nameNode;
      }
This did upgrade of metadata, closed process after finished, and later when all 
services were started, upgrade of datanodes finished sucessfully and system run 
.

What I'm suggesting right now is to add new startup parameter "-force", so 
namenode can be started like this "hadoop namenode -upgrade -force", so we can 
indicate that we want to terminate process after upgrade metadata on NN is 
finished. Old functionality should be preserved, so users can run "hadoop 
namenode -upgrade" on same way and with same behaviour as it was previous.

 Thanks,
 Danilo




--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to