hadoop-hdfs-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jing Zhao (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HDFS-6135) In HDFS upgrade with HA setup, JournalNode cannot handle layout version bump when rolling back
Date Fri, 21 Mar 2014 06:13:42 GMT

     [ https://issues.apache.org/jira/browse/HDFS-6135?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Jing Zhao updated HDFS-6135:
----------------------------

    Attachment: HDFS-6135.test.txt

The attached patch mimics the LV change while upgrade and can reproduce the exception on a
unit test.

> In HDFS upgrade with HA setup, JournalNode cannot handle layout version bump when rolling
back
> ----------------------------------------------------------------------------------------------
>
>                 Key: HDFS-6135
>                 URL: https://issues.apache.org/jira/browse/HDFS-6135
>             Project: Hadoop HDFS
>          Issue Type: Bug
>    Affects Versions: 2.4.0
>            Reporter: Jing Zhao
>         Attachments: HDFS-6135.test.txt
>
>
> While doing HDFS upgrade with HA setup, if the layoutversion gets changed in the upgrade,
the rollback may trigger the following exception in JournalNodes (suppose the new software
bumped the layoutversion from -55 to -56):
> {code}
> 14/03/21 01:01:53 FATAL namenode.NameNode: Exception in namenode join
> org.apache.hadoop.hdfs.qjournal.client.QuorumException: Could not check if roll back
possible for one or more JournalNodes. 1 exceptions thrown:
> Unexpected version of storage directory /grid/1/tmp/journal/mycluster. Reported: -56.
Expecting = -55.
> 	at org.apache.hadoop.hdfs.server.common.StorageInfo.setLayoutVersion(StorageInfo.java:203)
> 	at org.apache.hadoop.hdfs.server.common.StorageInfo.setFieldsFromProperties(StorageInfo.java:156)
> 	at org.apache.hadoop.hdfs.server.common.StorageInfo.readProperties(StorageInfo.java:135)
> 	at org.apache.hadoop.hdfs.qjournal.server.JNStorage.analyzeStorage(JNStorage.java:202)
> 	at org.apache.hadoop.hdfs.qjournal.server.JNStorage.<init>(JNStorage.java:73)
> 	at org.apache.hadoop.hdfs.qjournal.server.Journal.<init>(Journal.java:142)
> 	at org.apache.hadoop.hdfs.qjournal.server.JournalNode.getOrCreateJournal(JournalNode.java:87)
> 	at org.apache.hadoop.hdfs.qjournal.server.JournalNode.canRollBack(JournalNode.java:304)
> 	at org.apache.hadoop.hdfs.qjournal.server.JournalNodeRpcServer.canRollBack(JournalNodeRpcServer.java:228)
> {code}
> Looks like for rollback JN with old software cannot handle future layoutversion brought
by new software.



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

Mime
View raw message