You are viewing a plain text version of this content. The canonical link for it is here.
Posted to yarn-dev@hadoop.apache.org by "Wangda Tan (JIRA)" <ji...@apache.org> on 2014/03/25 13:35:17 UTC

[jira] [Created] (YARN-1871) We should eliminate writing *PBImpl code in YARN

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)