[
https://issues.apache.org/jira/browse/HDFS-8656?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14602043#comment-14602043
]
Ming Ma commented on HDFS-8656:
-------------------------------
Thanks, Andrew. Latest patch looks good. Nit: since you are modifying
testDFSAdminDatanodeUpgradeControlCommands,
{noformat}
Assert.assertEquals(0, dfsadmin.run(args1));
{noformat}
can be:
{noformat}
runCmd(dfsadmin, true, "-getDatanodeInfo", dnAddr);
{noformat}
> Preserve compatibility of ClientProtocol#rollingUpgrade after finalization
> --------------------------------------------------------------------------
>
> Key: HDFS-8656
> URL: https://issues.apache.org/jira/browse/HDFS-8656
> Project: Hadoop HDFS
> Issue Type: Bug
> Components: rolling upgrades
> Affects Versions: 2.8.0
> Reporter: Andrew Wang
> Assignee: Andrew Wang
> Priority: Critical
> Attachments: hdfs-8656.001.patch, hdfs-8656.002.patch,
> hdfs-8656.003.patch
>
>
> HDFS-7645 changed rollingUpgradeInfo to still return an RUInfo after
> finalization, so the DNs can differentiate between rollback and a
> finalization. However, this breaks compatibility for the user facing APIs,
> which always expect a null after finalization. Let's fix this and edify it in
> unit tests.
> As an additional improvement, isFinalized and isStarted are part of the Java
> API, but not in the JMX output of RollingUpgradeInfo. It'd be nice to expose
> these booleans so JMX users don't need to do the != 0 check that possibly
> exposes our implementation details.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)