[ https://issues.apache.org/jira/browse/YARN-4446?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15126988#comment-15126988 ]
Sangjin Lee commented on YARN-4446: ----------------------------------- Thanks [~varun_saxena] for your patch! I generally agree with the direction you are taking with this patch. I think the rule of thumb is, the impact of any changes to filters or data to retrieve should be limited to {{TimelineReaderWebServices}} and {{\*EntityReaders}}, and should not result in changes in any other place. I think that is the case with the patch, but can you also confirm? Regarding *common* default behavior we have throughout the code base, should we move them to {{TimelineEntityFilters}} and {{TimelineDataToRetrieve}} respectively and encapsulate them? The examples include things like DEFAULT_LIMIT and behavior around default data to retrieve if the user didn't specify any. (TimelineContext.java) - nit: it might be slightly better to call the other constructor (TimelineReaderContext.java) - nit: same as TimelineContext (TimelineReaderManager.java) - l.127: why is this copy necessary? (TimelineReader.java) - The javadoc that's added here is great. My only question is, where should we have the detailed description of the filters and data to retrieve? Should we put them in TimelineDataToRetrieve and TimelineEntityFilters instead? > Refactor reader API for better extensibility > -------------------------------------------- > > Key: YARN-4446 > URL: https://issues.apache.org/jira/browse/YARN-4446 > Project: Hadoop YARN > Issue Type: Sub-task > Components: timelineserver > Affects Versions: YARN-2928 > Reporter: Varun Saxena > Assignee: Varun Saxena > Labels: yarn-2928-1st-milestone > Attachments: YARN-4446-YARN-2928.01.patch, > YARN-4446-YARN-2928.02.patch > > -- This message was sent by Atlassian JIRA (v6.3.4#6332)