[ https://issues.apache.org/jira/browse/TEZ-122?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Hitesh Shah updated TEZ-122: ---------------------------- Target Version/s: 0.8.0 (was: 0.7.0) > Finalize v1 DAGPlan and consider versioning support > --------------------------------------------------- > > Key: TEZ-122 > URL: https://issues.apache.org/jira/browse/TEZ-122 > Project: Apache Tez > Issue Type: Bug > Reporter: Mike Liddell > Priority: Critical > > The DAGPlan format will change over time. The current definition may be too > strict with required fields and not have the desired flexibilty for > versioning. > options/suggestions > 1. remove structural constraints (ie everything is optional) so that additive > changes can succeed and so that mandatory fields in v1 can become optional > without difficulty. > This doesn't help with changes to naming changes and doesn't help if > semantics change. > 2. introduce a version field to the protobuf. This version field should > probably be the only mandatory field in the top-level message so that it can > always be parsed. Versioning may introduce additional Protobuf definititions > eg DAGPlanv2 and so on. > A combination of 1 & 2 seems wise. If all fields are optional, then we dont > get stuck with unwanted mandatory fields. and if a version number is > included, the AppMaster can tell what semantics / assumptions should apply > when consuming the plan. -- This message was sent by Atlassian JIRA (v6.3.4#6332)