You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-issues@hadoop.apache.org by "fengwu (Jira)" <ji...@apache.org> on 2020/07/10 06:29:00 UTC

[jira] [Commented] (HDFS-8432) Introduce a minimum compatible layout version to allow downgrade in more rolling upgrade use cases.

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

fengwu commented on HDFS-8432:
------------------------------

Hi, [~heliangjun] ! 

   Can the datanode be downgraded successfull  during your upgrade? 

    Found in my test roll downgrade from 3.1.3 to 2.7.2, namenode  successful , but datanode failed (2.8+ successfully ).  because  different datanode  layout versions is -56 in hdfs 2.7 .
{code:java}
// code placeholder
2020-07-06 14:45:01,313 WARN org.apache.hadoop.hdfs.server.common.Storage: org.apache.hadoop.hdfs.server.common.IncorrectVersionException: Unexpected version of storage directory /data/hadoop/dfs. Reported: -57. Expecting = -56. 2020-07-06 14:45:01,315 INFO org.apache.hadoop.hdfs.server.common.Storage: Lock on /data/hadoop/dfs/in_use.lock acquired by nodename 21258@test-v03 2020-07-06 14:45:01,315 WARN org.apache.hadoop.hdfs.server.common.Storage: org.apache.hadoop.hdfs.server.common.IncorrectVersionException: Unexpected version of storage directory /data/hadoop/dfs. Reported: -57. Expecting = -56. 2020-07-06 14:45:01,315 FATAL org.apache.hadoop.hdfs.server.datanode.DataNode: Initialization failed for Block pool <registering> (Datanode Uuid unassigned) service to test-v01/10.110.228.21:8020. Exiting. java.io.IOException: All specified directories are failed to load. at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:478) at org.apache.hadoop.hdfs.server.datanode.DataNode.initStorage(DataNode.java:1358) at org.apache.hadoop.hdfs.server.datanode.DataNode.initBlockPool(DataNode.java:1323) at org.apache.hadoop.hdfs.server.datanode.BPOfferService.verifyAndSetNamespaceInfo(BPOfferService.java:317) at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.connectToNNAndHandshake(BPServiceActor.java:223) at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.run(BPServiceActor.java:802) at java.lang.Thread.run(Thread.java:748)
{code}

> Introduce a minimum compatible layout version to allow downgrade in more rolling upgrade use cases.
> ---------------------------------------------------------------------------------------------------
>
>                 Key: HDFS-8432
>                 URL: https://issues.apache.org/jira/browse/HDFS-8432
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>          Components: namenode, rolling upgrades
>            Reporter: Chris Nauroth
>            Assignee: Chris Nauroth
>            Priority: Major
>             Fix For: 2.8.0, 3.0.0-alpha1
>
>         Attachments: HDFS-8432-HDFS-Downgrade-Extended-Support.pdf, HDFS-8432-branch-2.002.patch, HDFS-8432-branch-2.003.patch, HDFS-8432.001.patch, HDFS-8432.002.patch
>
>
> Maintain the prior layout version during the upgrade window and reject attempts to use new features until after the upgrade has been finalized.  This guarantees that the prior software version can read the fsimage and edit logs if the administrator decides to downgrade.  This will make downgrade usable for the majority of NameNode layout version changes, which just involve introduction of new edit log operations.



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

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