[ https://issues.apache.org/jira/browse/YARN-1871?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Wangda Tan updated YARN-1871: ----------------------------- Assignee: (was: Wangda Tan) > 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 > Attachments: YARN-1871.demo.patch > > > 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.3.4#6332)