Skip to content
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

use terms in set for concrete IPs keep disjunctions over ranges. fix #16200 #16202

Closed
wants to merge 4 commits into from

Conversation

mkhludnev
Copy link
Contributor

Description

Combines a many concrete IPs into set when querying IP field

Related Issues

Resolves #16200

Check List

  • Functionality includes testing.
  • API changes companion pull request created, if applicable.
  • Public documentation issue/PR created, if applicable.

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 github-actions bot added enhancement Enhancement or improvement to existing feature or request Search:Query Capabilities labels Oct 6, 2024
@mkhludnev
Copy link
Contributor Author

Please confirm my understanding, then I come up with thorough testing.
Presumably would be great to optimize union of ranges with specialized points query.

Copy link
Contributor

github-actions bot commented Oct 6, 2024

❌ Gradle check result for e782068: 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?

Copy link
Contributor

❌ Gradle check result for 0a1c3d0: 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?

Copy link
Contributor

❌ Gradle check result for bebebac: 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?

Copy link
Contributor

❌ Gradle check result for fbbb0bc: 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?

Copy link
Contributor

❌ Gradle check result for da89a31: 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?

Signed-off-by: mikhail-khludnev <[email protected]>
Copy link
Contributor

❌ Gradle check result for 33b8494: 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?

Signed-off-by: mikhail-khludnev <[email protected]>
Copy link
Contributor

❌ Gradle check result for 3c15413: 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?

Signed-off-by: mikhail-khludnev <[email protected]>
Copy link
Contributor

❌ Gradle check result for 853a344: 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?

@mkhludnev
Copy link
Contributor Author

»  java.lang.IllegalArgumentException: Could not load codec 'Lucene912'. Did you forget to add lucene-backward-codecs.jar?
»  Likely root cause: java.lang.IllegalArgumentException: An SPI class of type org.apache.lucene.codecs.Codec with name 'Lucene912' does not exist.  You need to add the corresponding JAR file supporting this SPI to your classpath.  The current classpath supports the following names: [Lucene80, Lucene84, Lucene86, Lucene87, Lucene70, Lucene90, Lucene91, Lucene92, Lucene94, Lucene95, Lucene99, Composite99Codec]
»  	at org.apache.lucene.util.NamedSPILoader.lookup(NamedSPILoader.java:113)
»  	at org.apache.lucene.codecs.Codec.forName(Codec.java:118)

Task :qa:mixed-cluster:v2.18.0#mixedClusterTest FAILED

https://build.ci.opensearch.org/job/gradle-check/49705/consoleFull

I'm not sure what I can do with it.

import static org.opensearch.action.support.WriteRequest.RefreshPolicy.IMMEDIATE;
import static org.hamcrest.Matchers.equalTo;

public class SearchIpFieldTermsTests extends OpenSearchSingleNodeTestCase {
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It might be too heavy testing approach for the current change. However, such depth is necessary for the second stage (when ranges will be combined at PointsVisitor level).
There might be just a IpFieldTypeTest asserting resulting BooleanQuery has set of IP points. WDYT?

final String ip;
final int prefix;
if (IPv4_ONLY) {
ip = generateRandomIPv4();
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it's just IP4 test, no IP6. Is IP6 necessary, is it worth to combine 6th and 4th in the single test?

@mkhludnev
Copy link
Contributor Author

closing in favor of #16391

@mkhludnev mkhludnev closed this Nov 16, 2024
@mkhludnev mkhludnev deleted the 16200-terms-ip branch November 28, 2024 06:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Enhancement or improvement to existing feature or request Search:Query Capabilities
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Feature Request] relax max Clauses Count limitation of termS query over IP field
1 participant