[ 
https://issues.apache.org/jira/browse/HDFS-15566?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17193191#comment-17193191
 ] 

Wei-Chiu Chuang edited comment on HDFS-15566 at 9/9/20, 9:44 PM:
-----------------------------------------------------------------

Should we add a doc to tell users not to rolling upgrade to Hadoop 3.3.0?

We should also consider supporting the downgrade scenario, which means do not 
write out the mtime field to fsimage until the upgrade finalizes. See: 
HDFS-14396


was (Author: jojochuang):
Should we add a doc to tell users not to rolling upgrade to Hadoop 3.3.0?

> NN restart fails after RollingUpgrade from  3.1.3/3.2.1 to 3.3.0
> ----------------------------------------------------------------
>
>                 Key: HDFS-15566
>                 URL: https://issues.apache.org/jira/browse/HDFS-15566
>             Project: Hadoop HDFS
>          Issue Type: Bug
>            Reporter: Brahma Reddy Battula
>            Assignee: Brahma Reddy Battula
>            Priority: Blocker
>         Attachments: HDFS-15566-001.patch
>
>
> * After rollingUpgrade NN from 3.1.3/3.2.1 to 3.3.0, if the NN is restarted, 
> it fails while replaying edit logs.
>  * HDFS-14922, HDFS-14924, and HDFS-15054 introduced the *modification time* 
> bits to the editLog transactions.
>  * When NN is restarted and the edit logs are replayed, the NN reads the old 
> layout version from the editLog file. When parsing the transactions, it 
> assumes that the transactions are also from the previous layout and hence 
> skips parsing the *modification time* bits.
>  * This cascades into reading the wrong set of bits for other fields and 
> leads to NN shutting down.
> {noformat}
> 2020-09-07 19:34:42,085 | DEBUG | main | Stopping client | Client.java:1361
> 2020-09-07 19:34:42,087 | ERROR | main | Failed to start namenode. | 
> NameNode.java:1751
> java.lang.IllegalArgumentException
>  at com.google.common.base.Preconditions.checkArgument(Preconditions.java:72)
>  at org.apache.hadoop.ipc.ClientId.toString(ClientId.java:56)
>  at 
> org.apache.hadoop.hdfs.server.namenode.FSEditLogOp.appendRpcIdsToString(FSEditLogOp.java:318)
>  at 
> org.apache.hadoop.hdfs.server.namenode.FSEditLogOp.access$700(FSEditLogOp.java:153)
>  at 
> org.apache.hadoop.hdfs.server.namenode.FSEditLogOp$DeleteSnapshotOp.toString(FSEditLogOp.java:3606)
>  at java.lang.String.valueOf(String.java:2994)
>  at java.lang.StringBuilder.append(StringBuilder.java:131)
>  at 
> org.apache.hadoop.hdfs.server.namenode.FSEditLogLoader.loadEditRecords(FSEditLogLoader.java:305)
>  at 
> org.apache.hadoop.hdfs.server.namenode.FSEditLogLoader.loadFSEdits(FSEditLogLoader.java:188)
>  at org.apache.hadoop.hdfs.server.namenode.FSImage.loadEdits(FSImage.java:932)
>  at 
> org.apache.hadoop.hdfs.server.namenode.FSImage.loadFSImage(FSImage.java:779)
>  at 
> org.apache.hadoop.hdfs.server.namenode.FSImage.recoverTransitionRead(FSImage.java:337)
>  at 
> org.apache.hadoop.hdfs.server.namenode.FSNamesystem.loadFSImage(FSNamesystem.java:1136)
>  at 
> org.apache.hadoop.hdfs.server.namenode.FSNamesystem.loadFromDisk(FSNamesystem.java:742)
>  at 
> org.apache.hadoop.hdfs.server.namenode.NameNode.loadNamesystem(NameNode.java:654)
>  at 
> org.apache.hadoop.hdfs.server.namenode.NameNode.initialize(NameNode.java:716)
>  at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:959)
>  at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:932)
>  at 
> org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1674)
>  at 
> org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1744){noformat}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org

Reply via email to