hadoop-hdfs-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Uma Maheswara Rao G (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HDFS-9788) Incompatible tag renumbering in HeartbeatResponseProto
Date Wed, 10 Feb 2016 22:15:18 GMT

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

Uma Maheswara Rao G commented on HDFS-9788:
-------------------------------------------

Yeah. Got it. Actually minor version should not have incompatible changes, but  HDFS-9426
change merged with differed versioning. That change itself be an incompatible change I think.
:-). By noticing that we could have avoided it.

{quote}
This is a good reminder to check the PBs very carefully for each release. I wonder if there
is a way to automate this check? I see YARN-3330 which has a python script, but looks like
it's not reviewed yet.
{quote}
Agree if we can find some better way to find this numbering differences automatically.  Big
+1 for the ideas like in YARN-3330.

> Incompatible tag renumbering in HeartbeatResponseProto
> ------------------------------------------------------
>
>                 Key: HDFS-9788
>                 URL: https://issues.apache.org/jira/browse/HDFS-9788
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: rolling upgrades
>    Affects Versions: 2.8.0
>            Reporter: Andrew Wang
>            Assignee: Andrew Wang
>            Priority: Blocker
>         Attachments: HDFS-9788.001.patch
>
>
> The HDFS-9426 patches for branch-2.7 and branch-2 used different tag numbers for {{rollingUpgradeStatusV2}}
in HeartbeatResponseProto:
> trunk/branch-2:
> {code}
> message HeartbeatResponseProto {
>   repeated DatanodeCommandProto cmds = 1; // Returned commands can be null
>   required NNHAStatusHeartbeatProto haStatus = 2;
>   optional RollingUpgradeStatusProto rollingUpgradeStatus = 3;
>   optional uint64 fullBlockReportLeaseId = 4 [ default = 0 ];
>   optional RollingUpgradeStatusProto rollingUpgradeStatusV2 = 5;
> }
> {code}
> branch-2.7:
> {code}
> message HeartbeatResponseProto {
>   repeated DatanodeCommandProto cmds = 1; // Returned commands can be null
>   required NNHAStatusHeartbeatProto haStatus = 2;
>   optional RollingUpgradeStatusProto rollingUpgradeStatus = 3;
>   optional RollingUpgradeStatusProto rollingUpgradeStatusV2 = 4;
> }
> {code}
> This breaks rolling upgrade between 2.7 and a future 2.8. We need to renumber the tags
to preserve wire compatibility.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message