[ https://issues.apache.org/jira/browse/YARN-3863?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15166456#comment-15166456 ]
Sangjin Lee commented on YARN-3863: ----------------------------------- {quote} Yes, code is similar. We are looping over a filter list and then checking the operator while doing processing for an individual filter. I thought about it but then the issue in moving it into a common area is that the data structures which hold events, configs, metrics,etc. are not same. We can however do one thing and that is to pass the TimelineEntity object itself into a common function(for all filters) and also pass something, say an enum indicating what kind of filter we are intending to match(name it as something like TimelineEntityFiltersType). Then based on this enum value, get the appropriate item(configs, metrics,etc.) from the passed entity. This way we can move common logic to a specific method which can in turn call the appropriate method to process based on filter type(say equality filter, multivalue equality filter, etc.). Does this sound fine ? {quote} I think so. I'll need to see the changes in code to get a better sense, though. > Support complex filters in TimelineReader > ----------------------------------------- > > Key: YARN-3863 > URL: https://issues.apache.org/jira/browse/YARN-3863 > Project: Hadoop YARN > Issue Type: Sub-task > Affects Versions: YARN-2928 > Reporter: Varun Saxena > Assignee: Varun Saxena > Labels: yarn-2928-1st-milestone > Attachments: YARN-3863-YARN-2928.v2.01.patch, > YARN-3863-YARN-2928.v2.02.patch, YARN-3863-feature-YARN-2928.wip.003.patch, > YARN-3863-feature-YARN-2928.wip.01.patch, > YARN-3863-feature-YARN-2928.wip.02.patch, > YARN-3863-feature-YARN-2928.wip.04.patch, > YARN-3863-feature-YARN-2928.wip.05.patch > > > Currently filters in timeline reader will return an entity only if all the > filter conditions hold true i.e. only AND operation is supported. We can > support OR operation for the filters as well. Additionally as primary backend > implementation is HBase, we can design our filters in a manner, where they > closely resemble HBase Filters. -- This message was sent by Atlassian JIRA (v6.3.4#6332)