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

James Thomas commented on HDFS-6800:
------------------------------------

Thanks, Arpit. Here are the key issues I think we need to test (beyond simply 
checking that rolling upgrade and rolling upgrade rollback work without data 
loss after HDFS-6482):

For a rolling upgrade that changes the DN layout version:
* On upgrade finalize, make sure that the {{previous}} directories on the DNs 
are deleted
* On upgrade rollback, make sure the trash is deleted and not restored
* On upgrade rollback, make sure the {{previous}} directories on the DNs are 
not deleted prior to the rollback (need to wait until a few block reports have 
occurred to make sure there is no deletion)

For a rolling upgrade that does not change the DN layout version:
* Make sure that we roll back correctly using the {{-rollback}} flag

Downgrade is not a concern for us since we cannot downgrade after changing the 
DN layout version.

> Support Datanode layout changes with rolling upgrade
> ----------------------------------------------------
>
>                 Key: HDFS-6800
>                 URL: https://issues.apache.org/jira/browse/HDFS-6800
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>          Components: datanode
>    Affects Versions: 2.6.0
>            Reporter: Colin Patrick McCabe
>            Assignee: James Thomas
>             Fix For: 3.0.0, 2.6.0
>
>         Attachments: HDFS-6800.2.patch, HDFS-6800.3.patch, HDFS-6800.4.patch, 
> HDFS-6800.5.patch, HDFS-6800.6.patch, HDFS-6800.7.patch, HDFS-6800.8.patch, 
> HDFS-6800.patch
>
>
> We need to handle attempts to rolling-upgrade the DataNode to a new storage 
> directory layout.
> One approach is to disallow such upgrades.  If we choose this approach, we 
> should make sure that the system administrator gets a helpful error message 
> and a clean failure when trying to use rolling upgrade to a version that 
> doesn't support it.  Based on the compatibility guarantees described in 
> HDFS-5535, this would mean that *any* future DataNode layout changes would 
> require a major version upgrade.
> Another approach would be to support rolling upgrade from an old DN storage 
> layout to a new layout.  This approach requires us to change our 
> documentation to explain to users that they should supply the {{\-rollback}} 
> command on the command-line when re-starting the DataNodes during rolling 
> rollback.  Currently the documentation just says to restart the DataNode 
> normally.
> Another issue here is that the DataNode's usage message describes rollback 
> options that no longer exist.  The help text says that the DN supports 
> {{\-rollingupgrade rollback}}, but this option was removed by HDFS-6005.



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

Reply via email to