Wangda Tan created YARN-1871:
--------------------------------

             Summary: We should eliminate writing *PBImpl code in YARN
                 Key: YARN-1871
                 URL: https://issues.apache.org/jira/browse/YARN-1871
             Project: Hadoop YARN
          Issue Type: Improvement
          Components: api
    Affects Versions: 2.4.0
            Reporter: Wangda Tan
            Assignee: Wangda Tan



Currently, We need write PBImpl classes one by one. After running "find . -name 
"*PBImpl*.java" | xargs wc -l" under hadoop source code directory, we can see, 
there're more than 25,000 LOC. I think we should improve this, which will be 
very helpful for YARN developers to make changes for YARN protocols.


There're only some limited patterns in current *PBImpl,
* Simple types, like string, int32, float.
* List<?> types
* Map<?> types
* Enum types
Code generation should be enough to generate such PBImpl classes.

Some other requirements are,
* Leave other related code alone, like service implemention (e.g. 
ContainerManagerImpl).
* (If possible) Forward compatibility, developpers can write their own PBImpl 
or genereate them.



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

Reply via email to