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

Fixed exception for case when Hybrid query being wrapped into bool query #490

Conversation

martin-gaievski
Copy link
Member

@martin-gaievski martin-gaievski commented Nov 11, 2023

Description

There is a runtime NullPointer exception in case hybrid query is:

  • wrapped into Bool query
    AND
  • for one of the sub-queries in hybrid query there are no matches.

It's not directly related to the fact that hybrid is wrapped into some other query. That case needs to be discussed separately, my current opinion is - we should not allow execution of such query, hybrid must be the top level query. This particular PR is focused on a runtime exception, and does not affect or lock us on a particular approach for a wrapped hybrid query case.

For instance if we send following search request:

GET /index-test/_search?search_pipeline=nlp-search-pipeline

{
    "query": {
        "bool": {
            "should": [
                {
                    "hybrid": {
                        "queries": [
                            {
                                "match": {
                                    "name": {
                                        "query": "wild west"
                                    }
                                }
                            },
                            {
                                "match": {
                                    "name": {
                                        "query": "team"
                                    }
                                }
                            }
                        ]
                    }
                },
                {
                    "match": {
                        "name": {
                            "query": "university"
                        }
                    }
                }
            ]
        }
    }
}

Response looks something like one below:

{
    "error": {
        "root_cause": [
            {
                "type": "null_pointer_exception",
                "reason": "Cannot invoke \"org.apache.lucene.search.Scorer.docID()\" because \"scorer\" is null"
            }
        ],
        "type": "search_phase_execution_exception",
        "reason": "all shards failed",
        "phase": "query",
        "grouped": true,
        "failed_shards": [
            {
                "shard": 0,
                "index": "index-test",
                "node": "Ibk3JAobTkO8VygwSsXZ0g",
                "reason": {
                    "type": "null_pointer_exception",
                    "reason": "Cannot invoke \"org.apache.lucene.search.Scorer.docID()\" because \"scorer\" is null"
                }
            }
        ],
        "caused_by": {
            "type": "null_pointer_exception",
            "reason": "Cannot invoke \"org.apache.lucene.search.Scorer.docID()\" because \"scorer\" is null",
            "caused_by": {
                "type": "null_pointer_exception",
                "reason": "Cannot invoke \"org.apache.lucene.search.Scorer.docID()\" because \"scorer\" is null"
            }
        }
    },
    "status": 500
}

this is what is the server logs:

[2023-11-14T11:35:06,517][WARN ][r.suppressed             ] [integTest-0] path: /index-test/_search, params: {search_pipeline=nlp-search-pipeline, index=index-test}
org.opensearch.action.search.SearchPhaseExecutionException: all shards failed
        at org.opensearch.action.search.AbstractSearchAsyncAction.onPhaseFailure(AbstractSearchAsyncAction.java:708) [opensearch-3.0.0-SNAPSHOT.jar:3.0.0-SNAPSHOT]
...
Caused by: org.opensearch.OpenSearchException$3: Cannot invoke "org.apache.lucene.search.Scorer.docID()" because "scorer" is null
        at org.opensearch.OpenSearchException.guessRootCauses(OpenSearchException.java:708) ~[opensearch-core-3.0.0-SNAPSHOT.jar:3.0.0-SNAPSHOT]
        at org.opensearch.action.search.AbstractSearchAsyncAction.executeNextPhase(AbstractSearchAsyncAction.java:378) [opensearch-3.0.0-SNAPSHOT.jar:3.0.0-SNAPSHOT]
        ... 23 more
Caused by: java.lang.NullPointerException: Cannot invoke "org.apache.lucene.search.Scorer.docID()" because "scorer" is null
        at org.opensearch.neuralsearch.query.HybridQueryScorer.lambda$getMaxScore$0(HybridQueryScorer.java:88) ~[?:?]
        at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:178) ~[?:?]
        at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625) ~[?:?]
        at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) ~[?:?]
        at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) ~[?:?]
        at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921) ~[?:?]
        at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:?]
        at java.base/java.util.stream.ReferencePipeline.reduce(ReferencePipeline.java:662) ~[?:?]
        at java.base/java.util.stream.ReferencePipeline.max(ReferencePipeline.java:698) ~[?:?]
        at org.opensearch.neuralsearch.query.HybridQueryScorer.getMaxScore(HybridQueryScorer.java:94) ~[?:?]

Expected result is that we shouldn't have any exceptions, and individual scores are summarized based on the rules of wrapping Bool query. Below is example of how successful response may look like:

{
    "took": 36,
    "timed_out": false,
    "_shards": {
        "total": 1,
        "successful": 1,
        "skipped": 0,
        "failed": 0
    },
    "hits": {
        "total": {
            "value": 4,
            "relation": "eq"
        },
        "max_score": 4.3169837,
        "hits": [
            {
                "_index": "index-test",
                "_id": "1",
                "_score": 4.3169837,
                "_source": {
                    "name": "A West Virginia university women 's basketball team , officials , and a small gathering of fans are in a West Virginia arena .",
                    "id": "4319130149.jpg"
                }
            },
            {
                "_index": "index-test",
                "_id": "2",
                "_score": 0.58093566,
                "_source": {
                    "name": "A wild animal races across an uncut field with a minimal amount of trees .",
                    "id": "1775029934.jpg"
                }
            },
            {
                "_index": "index-test",
                "_id": "5",
                "_score": 0.55228686,
                "_source": {
                    "name": "A rodeo cowboy , wearing a cowboy hat , is being thrown off of a wild white horse .",
                    "id": "2691147709.jpg"
                }
            },
            {
                "_index": "index-test",
                "_id": "4",
                "_score": 0.53899646,
                "_source": {
                    "name": "A man who is riding a wild horse in the rodeo is very near to falling off .",
                    "id": "4427058951.jpg"
                }
            }
        ]
    }
}

Check List

  • All tests pass
  • Commits are signed as per the DCO using --signoff

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.

@martin-gaievski martin-gaievski force-pushed the fix_npe_for_wrapped_hybrid_query branch from ef57d1d to dff866d Compare November 11, 2023 01:31
@martin-gaievski martin-gaievski added bug Something isn't working backport 2.x Label will add auto workflow to backport PR to 2.x branch labels Nov 11, 2023
Copy link

codecov bot commented Nov 11, 2023

Codecov Report

Attention: 4 lines in your changes are missing coverage. Please review.

Comparison is base (00c5589) 84.37% compared to head (f262695) 84.65%.
Report is 1 commits behind head on main.

Files Patch % Lines
...h/neuralsearch/query/NeuralSparseQueryBuilder.java 81.25% 0 Missing and 3 partials ⚠️
...ensearch/neuralsearch/query/HybridQueryScorer.java 0.00% 0 Missing and 1 partial ⚠️
Additional details and impacted files
@@             Coverage Diff              @@
##               main     #490      +/-   ##
============================================
+ Coverage     84.37%   84.65%   +0.27%     
- Complexity      498      508      +10     
============================================
  Files            40       40              
  Lines          1491     1505      +14     
  Branches        228      234       +6     
============================================
+ Hits           1258     1274      +16     
+ Misses          133      128       -5     
- Partials        100      103       +3     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@navneet1v
Copy link
Collaborator

@martin-gaievski can you add the exception signature in the PR which we are getting?

@navneet1v
Copy link
Collaborator

@martin-gaievski can you add what is the expected outcome with this change when a hybrid query is inside a bool query?

@navneet1v
Copy link
Collaborator

@martin-gaievski the integration tests are also failing. If they are flaky lets fix them.

@martin-gaievski
Copy link
Member Author

@martin-gaievski can you add the exception signature in the PR which we are getting?

I've updated PR header with the error response and server log entry

@martin-gaievski
Copy link
Member Author

@martin-gaievski can you add what is the expected outcome with this change when a hybrid query is inside a bool query?

Yes, sure, I've updated PR with a sample of expected response. Basically scores should be summarized based on Bool clauses.

@martin-gaievski
Copy link
Member Author

@martin-gaievski the integration tests are also failing. If they are flaky lets fix them.

Ack, fixed the test.

now it passes with the same seed:

neural-search % ./gradlew ':test' --tests "org.opensearch.neuralsearch.query.HybridQueryWeightTests.testScorerIterator_whenExecuteQuery_thenScorerIteratorSuccessful" -Dtests.seed=9073359D6B181E6E
=======================================
OpenSearch Build Hamster says Hello!
  Gradle Version        : 8.1.1
  OS Info               : Mac OS X 13.5.2 (x86_64)
  JDK Version           : 17 (Amazon Corretto JDK)
  JAVA_HOME             : /Users/gaievski/.sdkman/candidates/java/17.0.5-amzn
  Random Testing Seed   : 9073359D6B181E6E
  In FIPS 140 mode      : false
=======================================

> Task :compileTestJava
Note: /Users/user/dev/opensearch/neural-search/src/test/java/org/opensearch/neuralsearch/query/HybridQueryWeightTests.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.

BUILD SUCCESSFUL in 14s
9 actionable tasks: 2 executed, 7 up-to-date

@martin-gaievski martin-gaievski force-pushed the fix_npe_for_wrapped_hybrid_query branch 3 times, most recently from a2c0593 to 438ae0a Compare November 15, 2023 16:34
@@ -7,6 +7,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
### Features
### Enhancements
### Bug Fixes
Fixed exception for case when Hybrid query being wrapped into bool query ([#490](https://github.com/opensearch-project/neural-search/pull/490)

Choose a reason for hiding this comment

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

Do we also have a task to not allow such queries in the future?

Copy link
Member Author

Choose a reason for hiding this comment

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

Yes, this is the general plan, but there are cases when it's not that easy. For instance, when nested field is present in the index mapping then the query will be wrapped into the Bool query where hybrid will be one of the child clause. We're investigating possible options.

Copy link
Collaborator

Choose a reason for hiding this comment

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

@martin-gaievski can you link the github issue here?

Copy link
Member Author

Choose a reason for hiding this comment

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

sure, this is a link to an issue #466

Signed-off-by: Martin Gaievski <gaievski@amazon.com>
Signed-off-by: Martin Gaievski <gaievski@amazon.com>
Signed-off-by: Martin Gaievski <gaievski@amazon.com>
@martin-gaievski martin-gaievski force-pushed the fix_npe_for_wrapped_hybrid_query branch from 8060635 to f262695 Compare November 20, 2023 19:14
@martin-gaievski martin-gaievski merged commit b3c73bd into opensearch-project:main Nov 20, 2023
14 of 15 checks passed
@opensearch-trigger-bot
Copy link
Contributor

The backport to 2.x failed:

The process '/usr/bin/git' failed with exit code 1

To backport manually, run these commands in your terminal:

# Fetch latest updates from GitHub
git fetch
# Create a new working tree
git worktree add .worktrees/backport-2.x 2.x
# Navigate to the new working tree
cd .worktrees/backport-2.x
# Create a new branch
git switch --create backport/backport-490-to-2.x
# Cherry-pick the merged commit of this pull request and resolve the conflicts
git cherry-pick -x --mainline 1 b3c73bdaae28629d9be4128afcf549c790070887
# Push it to GitHub
git push --set-upstream origin backport/backport-490-to-2.x
# Go back to the original working tree
cd ../..
# Delete the working tree
git worktree remove .worktrees/backport-2.x

Then, create a pull request where the base branch is 2.x and the compare/head branch is backport/backport-490-to-2.x.

martin-gaievski added a commit to martin-gaievski/neural-search that referenced this pull request Nov 20, 2023
…ery (opensearch-project#490)

* Adding null check for case when hybrid query wrapped into bool query

Signed-off-by: Martin Gaievski <gaievski@amazon.com>
(cherry picked from commit b3c73bd)
martin-gaievski added a commit to martin-gaievski/neural-search that referenced this pull request Nov 20, 2023
…ery (opensearch-project#490)

* Adding null check for case when hybrid query wrapped into bool query

Signed-off-by: Martin Gaievski <gaievski@amazon.com>
(cherry picked from commit b3c73bd)
Signed-off-by: Martin Gaievski <gaievski@amazon.com>
martin-gaievski added a commit to martin-gaievski/neural-search that referenced this pull request Nov 21, 2023
…ery (opensearch-project#490)

* Adding null check for case when hybrid query wrapped into bool query

Signed-off-by: Martin Gaievski <gaievski@amazon.com>
(cherry picked from commit b3c73bd)
Signed-off-by: Martin Gaievski <gaievski@amazon.com>
martin-gaievski added a commit that referenced this pull request Nov 21, 2023
…ery (#490) (#496)

* Adding null check for case when hybrid query wrapped into bool query

(cherry picked from commit b3c73bd)

Signed-off-by: Martin Gaievski <gaievski@amazon.com>
opensearch-trigger-bot bot pushed a commit that referenced this pull request Dec 6, 2023
…ery (#490) (#496)

* Adding null check for case when hybrid query wrapped into bool query

(cherry picked from commit b3c73bd)

Signed-off-by: Martin Gaievski <gaievski@amazon.com>
(cherry picked from commit ef19ffa)
krishy91 pushed a commit to krishy91/neural-search that referenced this pull request Dec 20, 2023
…ery (opensearch-project#490)

* Adding null check for case when hybrid query wrapped into bool query

Signed-off-by: Martin Gaievski <gaievski@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>
krishy91 pushed a commit to krishy91/neural-search that referenced this pull request Jan 4, 2024
…ery (opensearch-project#490)

* Adding null check for case when hybrid query wrapped into bool query

Signed-off-by: Martin Gaievski <gaievski@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>
zane-neo pushed a commit that referenced this pull request Mar 1, 2024
* Handle case with nested list of objects

Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* fix validateEmbeddingsFieldValues Method

Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* spotless formatting

Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Onboard jenkins prod docker images on github actions (#483)

Signed-off-by: Peter Zhu <zhujiaxi@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Update dependency org.json:json to v20231013 (#481)

Co-authored-by: mend-for-github-com[bot] <50673670+mend-for-github-com[bot]@users.noreply.github.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* [Backport main manually][bug fix] Fix async actions are left in neural_sparse query (#438) (#479)

* [bug fix] Fix async actions are left in neural_sparse query (#438)

* add serialization and deserialization

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

* hash, equals. + UT

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

* tidy

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

* add test

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

---------

Signed-off-by: zhichao-aws <zhichaog@amazon.com>
(cherry picked from commit 51e6c00)

* rm max_token_score

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

* add changelog

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

* tidy

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

---------

Signed-off-by: zhichao-aws <zhichaog@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Fixed exception for case when Hybrid query being wrapped into bool query (#490)

* Adding null check for case when hybrid query wrapped into bool query

Signed-off-by: Martin Gaievski <gaievski@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Fixed Hybrid query for cases when it's wrapped into other compound queries (#498)

* Fixed nested field case

Signed-off-by: Martin Gaievski <gaievski@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Added the github action to copy the attached issues label to PR. (#504)

Signed-off-by: Navneet Verma <navneev@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Added support for jdk-21 (#500)

* Added support for jdk-21

Signed-off-by: Martin Gaievski <gaievski@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Add unit tests + small fixes

Signed-off-by: krishy91 <crgkc.r@gmail.com>

* fix indentation

Signed-off-by: krishy91 <crgkc.r@gmail.com>

* remove unused code + add 2nd level nesting test

Signed-off-by: krishy91 <crgkc.r@gmail.com>

* add integration test for list of nested objects

Signed-off-by: krishy91 <crgkc.r@gmail.com>

---------

Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>
Signed-off-by: Peter Zhu <zhujiaxi@amazon.com>
Signed-off-by: zhichao-aws <zhichaog@amazon.com>
Signed-off-by: Martin Gaievski <gaievski@amazon.com>
Signed-off-by: Navneet Verma <navneev@amazon.com>
Signed-off-by: krishy91 <crgkc.r@gmail.com>
Co-authored-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>
Co-authored-by: Peter Zhu <zhujiaxi@amazon.com>
Co-authored-by: mend-for-github-com[bot] <50673670+mend-for-github-com[bot]@users.noreply.github.com>
Co-authored-by: zhichao-aws <zhichaog@amazon.com>
Co-authored-by: Martin Gaievski <gaievski@amazon.com>
Co-authored-by: Navneet Verma <navneev@amazon.com>
opensearch-trigger-bot bot pushed a commit that referenced this pull request Mar 1, 2024
* Handle case with nested list of objects

Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* fix validateEmbeddingsFieldValues Method

Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* spotless formatting

Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Onboard jenkins prod docker images on github actions (#483)

Signed-off-by: Peter Zhu <zhujiaxi@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Update dependency org.json:json to v20231013 (#481)

Co-authored-by: mend-for-github-com[bot] <50673670+mend-for-github-com[bot]@users.noreply.github.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* [Backport main manually][bug fix] Fix async actions are left in neural_sparse query (#438) (#479)

* [bug fix] Fix async actions are left in neural_sparse query (#438)

* add serialization and deserialization

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

* hash, equals. + UT

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

* tidy

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

* add test

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

---------

Signed-off-by: zhichao-aws <zhichaog@amazon.com>
(cherry picked from commit 51e6c00)

* rm max_token_score

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

* add changelog

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

* tidy

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

---------

Signed-off-by: zhichao-aws <zhichaog@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Fixed exception for case when Hybrid query being wrapped into bool query (#490)

* Adding null check for case when hybrid query wrapped into bool query

Signed-off-by: Martin Gaievski <gaievski@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Fixed Hybrid query for cases when it's wrapped into other compound queries (#498)

* Fixed nested field case

Signed-off-by: Martin Gaievski <gaievski@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Added the github action to copy the attached issues label to PR. (#504)

Signed-off-by: Navneet Verma <navneev@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Added support for jdk-21 (#500)

* Added support for jdk-21

Signed-off-by: Martin Gaievski <gaievski@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Add unit tests + small fixes

Signed-off-by: krishy91 <crgkc.r@gmail.com>

* fix indentation

Signed-off-by: krishy91 <crgkc.r@gmail.com>

* remove unused code + add 2nd level nesting test

Signed-off-by: krishy91 <crgkc.r@gmail.com>

* add integration test for list of nested objects

Signed-off-by: krishy91 <crgkc.r@gmail.com>

---------

Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>
Signed-off-by: Peter Zhu <zhujiaxi@amazon.com>
Signed-off-by: zhichao-aws <zhichaog@amazon.com>
Signed-off-by: Martin Gaievski <gaievski@amazon.com>
Signed-off-by: Navneet Verma <navneev@amazon.com>
Signed-off-by: krishy91 <crgkc.r@gmail.com>
Co-authored-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>
Co-authored-by: Peter Zhu <zhujiaxi@amazon.com>
Co-authored-by: mend-for-github-com[bot] <50673670+mend-for-github-com[bot]@users.noreply.github.com>
Co-authored-by: zhichao-aws <zhichaog@amazon.com>
Co-authored-by: Martin Gaievski <gaievski@amazon.com>
Co-authored-by: Navneet Verma <navneev@amazon.com>
(cherry picked from commit ea49d3c)
vibrantvarun pushed a commit that referenced this pull request Mar 5, 2024
* Handle case with nested list of objects

Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* fix validateEmbeddingsFieldValues Method

Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* spotless formatting

Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Onboard jenkins prod docker images on github actions (#483)

Signed-off-by: Peter Zhu <zhujiaxi@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Update dependency org.json:json to v20231013 (#481)

Co-authored-by: mend-for-github-com[bot] <50673670+mend-for-github-com[bot]@users.noreply.github.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* [Backport main manually][bug fix] Fix async actions are left in neural_sparse query (#438) (#479)

* [bug fix] Fix async actions are left in neural_sparse query (#438)

* add serialization and deserialization

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

* hash, equals. + UT

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

* tidy

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

* add test

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

---------

Signed-off-by: zhichao-aws <zhichaog@amazon.com>
(cherry picked from commit 51e6c00)

* rm max_token_score

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

* add changelog

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

* tidy

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

---------

Signed-off-by: zhichao-aws <zhichaog@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Fixed exception for case when Hybrid query being wrapped into bool query (#490)

* Adding null check for case when hybrid query wrapped into bool query

Signed-off-by: Martin Gaievski <gaievski@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Fixed Hybrid query for cases when it's wrapped into other compound queries (#498)

* Fixed nested field case

Signed-off-by: Martin Gaievski <gaievski@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Added the github action to copy the attached issues label to PR. (#504)

Signed-off-by: Navneet Verma <navneev@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Added support for jdk-21 (#500)

* Added support for jdk-21

Signed-off-by: Martin Gaievski <gaievski@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Add unit tests + small fixes

Signed-off-by: krishy91 <crgkc.r@gmail.com>

* fix indentation

Signed-off-by: krishy91 <crgkc.r@gmail.com>

* remove unused code + add 2nd level nesting test

Signed-off-by: krishy91 <crgkc.r@gmail.com>

* add integration test for list of nested objects

Signed-off-by: krishy91 <crgkc.r@gmail.com>

---------

Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>
Signed-off-by: Peter Zhu <zhujiaxi@amazon.com>
Signed-off-by: zhichao-aws <zhichaog@amazon.com>
Signed-off-by: Martin Gaievski <gaievski@amazon.com>
Signed-off-by: Navneet Verma <navneev@amazon.com>
Signed-off-by: krishy91 <crgkc.r@gmail.com>
Co-authored-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>
Co-authored-by: Peter Zhu <zhujiaxi@amazon.com>
Co-authored-by: mend-for-github-com[bot] <50673670+mend-for-github-com[bot]@users.noreply.github.com>
Co-authored-by: zhichao-aws <zhichaog@amazon.com>
Co-authored-by: Martin Gaievski <gaievski@amazon.com>
Co-authored-by: Navneet Verma <navneev@amazon.com>
(cherry picked from commit ea49d3c)

Co-authored-by: Gopala-Krishna Char <crgkc.r@gmail.com>
yuye-aws pushed a commit to yuye-aws/neural-search that referenced this pull request Mar 8, 2024
* Handle case with nested list of objects

Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* fix validateEmbeddingsFieldValues Method

Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* spotless formatting

Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Onboard jenkins prod docker images on github actions (opensearch-project#483)

Signed-off-by: Peter Zhu <zhujiaxi@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Update dependency org.json:json to v20231013 (opensearch-project#481)

Co-authored-by: mend-for-github-com[bot] <50673670+mend-for-github-com[bot]@users.noreply.github.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* [Backport main manually][bug fix] Fix async actions are left in neural_sparse query (opensearch-project#438) (opensearch-project#479)

* [bug fix] Fix async actions are left in neural_sparse query (opensearch-project#438)

* add serialization and deserialization

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

* hash, equals. + UT

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

* tidy

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

* add test

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

---------

Signed-off-by: zhichao-aws <zhichaog@amazon.com>
(cherry picked from commit 51e6c00)

* rm max_token_score

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

* add changelog

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

* tidy

Signed-off-by: zhichao-aws <zhichaog@amazon.com>

---------

Signed-off-by: zhichao-aws <zhichaog@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Fixed exception for case when Hybrid query being wrapped into bool query (opensearch-project#490)

* Adding null check for case when hybrid query wrapped into bool query

Signed-off-by: Martin Gaievski <gaievski@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Fixed Hybrid query for cases when it's wrapped into other compound queries (opensearch-project#498)

* Fixed nested field case

Signed-off-by: Martin Gaievski <gaievski@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Added the github action to copy the attached issues label to PR. (opensearch-project#504)

Signed-off-by: Navneet Verma <navneev@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Added support for jdk-21 (opensearch-project#500)

* Added support for jdk-21

Signed-off-by: Martin Gaievski <gaievski@amazon.com>
Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>

* Add unit tests + small fixes

Signed-off-by: krishy91 <crgkc.r@gmail.com>

* fix indentation

Signed-off-by: krishy91 <crgkc.r@gmail.com>

* remove unused code + add 2nd level nesting test

Signed-off-by: krishy91 <crgkc.r@gmail.com>

* add integration test for list of nested objects

Signed-off-by: krishy91 <crgkc.r@gmail.com>

---------

Signed-off-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>
Signed-off-by: Peter Zhu <zhujiaxi@amazon.com>
Signed-off-by: zhichao-aws <zhichaog@amazon.com>
Signed-off-by: Martin Gaievski <gaievski@amazon.com>
Signed-off-by: Navneet Verma <navneev@amazon.com>
Signed-off-by: krishy91 <crgkc.r@gmail.com>
Co-authored-by: Gopala-Krishna.Char <gopala-krishna.char@intrafind.de>
Co-authored-by: Peter Zhu <zhujiaxi@amazon.com>
Co-authored-by: mend-for-github-com[bot] <50673670+mend-for-github-com[bot]@users.noreply.github.com>
Co-authored-by: zhichao-aws <zhichaog@amazon.com>
Co-authored-by: Martin Gaievski <gaievski@amazon.com>
Co-authored-by: Navneet Verma <navneev@amazon.com>
Signed-off-by: yuye-aws <yuyezhu@amazon.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport 2.x Label will add auto workflow to backport PR to 2.x branch bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants