hadoop-hdfs-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Joshi, Rekha" <Rekha_Jo...@intuit.com>
Subject Re: HDFS upgrade problem of fsImage
Date Fri, 22 Nov 2013 10:25:09 GMT
Yes realized that and I see your point :-) However seems like some fs inconsistency present,
did you attempt rollback/finalizeUpgrade and check?

For that error, FSImage.java/code finds a previous fs state -

// Upgrade is allowed only if there are

    // no previous fs states in any of the directories

    for (Iterator<StorageDirectory> it = storage.dirIterator(); it.hasNext();) {

      StorageDirectory sd = it.next();

      if (sd.getPreviousDir().exists())

        throw new InconsistentFSStateException(sd.getRoot(),

            "previous fs state should not exist during upgrade. "

            + "Finalize or rollback first.");




From: Azuryy Yu <azuryyyu@gmail.com<mailto:azuryyyu@gmail.com>>
Reply-To: "user@hadoop.apache.org<mailto:user@hadoop.apache.org>" <user@hadoop.apache.org<mailto:user@hadoop.apache.org>>
Date: Thursday 21 November 2013 5:19 PM
To: "user@hadoop.apache.org<mailto:user@hadoop.apache.org>" <user@hadoop.apache.org<mailto:user@hadoop.apache.org>>
Cc: "hdfs-dev@hadoop.apache.org<mailto:hdfs-dev@hadoop.apache.org>" <hdfs-dev@hadoop.apache.org<mailto:hdfs-dev@hadoop.apache.org>>
Subject: Re: HDFS upgrade problem of fsImage

I insist hot upgrade on the test cluster because I want hot upgrade on the prod cluster.

On 2013-11-21 7:23 PM, "Joshi, Rekha" <Rekha_Joshi@intuit.com<mailto:Rekha_Joshi@intuit.com>>

Hi Azurry,

This error occurs when FSImage finds previous fs state, and as log states you would need to
either finalizeUpgrade or rollback to proceed.Below -

bin/hadoop dfsadmin –finalizeUpgrade
hadoop dfsadmin –rollback

On side note for a small test cluster on which one might suspect you are the only user, why
wouldn't you insist on hot upgrade? :-)


Some helpful guidelines for upgrade here -




From: Azuryy Yu <azuryyyu@gmail.com<mailto:azuryyyu@gmail.com>>
Reply-To: "user@hadoop.apache.org<mailto:user@hadoop.apache.org>" <user@hadoop.apache.org<mailto:user@hadoop.apache.org>>
Date: Thursday 21 November 2013 9:48 AM
To: "hdfs-dev@hadoop.apache.org<mailto:hdfs-dev@hadoop.apache.org>" <hdfs-dev@hadoop.apache.org<mailto:hdfs-dev@hadoop.apache.org>>,
"user@hadoop.apache.org<mailto:user@hadoop.apache.org>" <user@hadoop.apache.org<mailto:user@hadoop.apache.org>>
Subject: HDFS upgrade problem of fsImage

Hi Dear,

I have a small test cluster with hadoop-2.0x, and HA configuraded, but I want to upgrade to

I dont't want to stop cluster during upgrade, so my steps are:

1)  on standby NN: hadoop-dameon.sh stop namenode
2)  remove HA configuration in the conf
3)   hadoop-daemon.sh start namenode -upgrade -clusterID test-cluster

but Exception in the NN log, so how to upgrade and don't stop the whole cluster.

org.apache.hadoop.hdfs.server.common.InconsistentFSStateException: Directory /hdfs/name is
in an inconsistent state: previous fs state should not exist during upgrade. Finalize or rollback
        at org.apache.hadoop.hdfs.server.namenode.FSImage.doUpgrade(FSImage.java:323)
        at org.apache.hadoop.hdfs.server.namenode.FSImage.recoverTransitionRead(FSImage.java:248)
        at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.loadFSImage(FSNamesystem.java:858)
        at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.loadFromDisk(FSNamesystem.java:620)
        at org.apache.hadoop.hdfs.server.namenode.NameNode.loadNamesystem(NameNode.java:445)
        at org.apache.hadoop.hdfs.server.namenode.NameNode.initialize(NameNode.java:494)
        at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:692)
        at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:677)
        at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1279)
        at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1345)

View raw message