opensearch-project / OpenSearch

🔎 Open source distributed and RESTful search engine.
https://opensearch.org/docs/latest/opensearch/index/
Apache License 2.0
8.83k stars 1.62k forks source link

Query shape representation class structure #13542

Closed deshsidd closed 1 day ago

deshsidd commented 2 weeks ago

Changes part of Grouping Top N queries by similarity (https://github.com/opensearch-project/OpenSearch/issues/13419), to create the query shape representation class structure.

RFC: https://github.com/opensearch-project/OpenSearch/issues/13357

Description

As part of grouping Top N queries by similarity (https://github.com/opensearch-project/OpenSearch/issues/13357), the first set of changes are defining a class structure to represent the "Query Shape".

The following should be kept in mind when designing the class structure:

Related Issues

https://github.com/opensearch-project/OpenSearch/issues/13419

Check List

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license. For more information on following Developer Certificate of Origin and signing off your commits, please check here.

github-actions[bot] commented 2 weeks ago

:x: Gradle check result for d56c5fe3a79222fa5a9dcd612f9a9f2dbe1fbace: FAILURE

Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change?

github-actions[bot] commented 1 day ago

:x: Gradle check result for 5ab6e6821acefb9be16429dc1af68667f948a676: FAILURE

Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change?

github-actions[bot] commented 1 day ago

:x: Gradle check result for 74f058a619ab8f705580d1bb5f1522bfb4d01f67: FAILURE

Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change?

deshsidd commented 1 day ago

Discussed this with @msfroh and it makes sense to have a wrapper around the original query builder classes rather than creating a new parallel hierarchy. This will not be maintainable and will be hard to handle new querybuilders and querybuilders defined in plugins. Will close this for now and open up a new PR.