-
Notifications
You must be signed in to change notification settings - Fork 3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(search): Support Boolean OR Filters in Rest.li APIs #3344
feat(search): Support Boolean OR Filters in Rest.li APIs #3344
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is reference to filters in TimeseriesAspectService that you missed
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also seems like we cannot do and of or operations. is this intended?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you delete files under metadata-ingestion/src/datahub/metadata ? Should be ignored
...main/java/com/linkedin/metadata/search/elasticsearch/query/request/SearchRequestHandler.java
Outdated
Show resolved
Hide resolved
metadata-io/src/main/java/com/linkedin/metadata/search/utils/Neo4jUtil.java
Outdated
Show resolved
Hide resolved
.../java/com/linkedin/metadata/timeseries/elastic/ElasticSearchTimeseriesAspectServiceTest.java
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! Did you confirm metadata-io:tests are passing? Since it has been disabled in workflow want to make sure they are passing at least loaclly
Tested locally, yes! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
@jjoyce0510 @shirshanka should the classes that have been moved out of datahub-gma be marked as deprecated in a new release of datahub-gma and datahub move to that version? Otherwise it might confuse that datahub and its current datahub-gma version both have identical classes under different packages and it is not clear which to use. |
@jjoyce0510 @shirshanka @gabe-lyons Also, Does a |
@EnricoMi : we kept the |
@EnricoMi We are looking to this on our end. Ideally we can just kill that field for good and simplify this so no one has to deal with the case. Until then, you would be expected to deal with the possibility that the criteria field is populated. Update to come soon |
Yes ideally that'd be the case, however to our knowledge LinkedIn is still maintaining a version of datahub-gma in active use, so it's unclear if we'll be able to remove those files. We are currently transitioning away from depending on datahub-gma altogether and once that completes we'll be able to remove all dependencies to make things more comprehensible. But yes the ideal state is not the one we're currently operating in (yet) |
Changes
This filter accomplishes a few things:
Compatibility
This change is backwards incompatible for the Rest.li APIs exposed by GMS. If you are actively using them with the Filter functionality, you will need to update your code to use the new ConjunctiveCriterion model.
Old Filter structure:
and new Filter structure:
As you can see, in adding this API we are going to support Disjunctive Normal Form boolean queries in our API, which makes it much more powerful!
Checklist