[ 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)