-
Notifications
You must be signed in to change notification settings - Fork 1.9k
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
Improve flat_object field parsing performance by reducing two passes to a single pass #16297
Improve flat_object field parsing performance by reducing two passes to a single pass #16297
Conversation
7ca8d0b
to
5d37267
Compare
❌ Gradle check result for 5d37267: 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? |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #16297 +/- ##
============================================
+ Coverage 72.23% 72.37% +0.13%
- Complexity 65335 65414 +79
============================================
Files 5301 5301
Lines 303824 303769 -55
Branches 44033 44033
============================================
+ Hits 219471 219856 +385
+ Misses 66363 65874 -489
- Partials 17990 18039 +49 ☔ View full report in Codecov by Sentry. |
This PR is stalled because it has been open for 30 days with no activity. |
Signed-off-by: panguixin <[email protected]>
The current implementation of the range query is incorrect. When either the upper term or lower term is null, the range query combines the prefix with the literal value of null for searching. |
❌ Gradle check result for dca3469: 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? |
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.
Overall, I really like the cleanup with this change!
I was never a big fan of the JsonToStringXContentParser
, so I'm happy to see it go away.
server/src/main/java/org/opensearch/index/mapper/FlatObjectFieldMapper.java
Show resolved
Hide resolved
server/src/main/java/org/opensearch/index/mapper/FlatObjectFieldMapper.java
Show resolved
Hide resolved
server/src/main/java/org/opensearch/index/mapper/FlatObjectFieldMapper.java
Show resolved
Hide resolved
server/src/main/java/org/opensearch/index/mapper/FlatObjectFieldMapper.java
Outdated
Show resolved
Hide resolved
Signed-off-by: panguixin <[email protected]>
Signed-off-by: panguixin <[email protected]>
❌ Gradle check result for 6afc5b2: 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? |
I'm happy with these changes. Thanks a lot, @bugmakerrrrrr! Would you mind resolving the merge conflicts and we can get this in? @kkewwei -- do you have any more comments/concerns? |
It also make sense to me. |
@msfroh done |
Signed-off-by: Michael Froh <[email protected]>
The backport to
To backport manually, run these commands in your terminal: # Navigate to the root of your repository
cd $(git rev-parse --show-toplevel)
# Fetch latest updates from GitHub
git fetch
# Create a new working tree
git worktree add ../.worktrees/OpenSearch/backport-2.x 2.x
# Navigate to the new working tree
pushd ../.worktrees/OpenSearch/backport-2.x
# Create a new branch
git switch --create backport/backport-16297-to-2.x
# Cherry-pick the merged commit of this pull request and resolve the conflicts
git cherry-pick -x --mainline 1 27946550b686df41fd0ff53cb340ce52c73a7b45
# Push it to GitHub
git push --set-upstream origin backport/backport-16297-to-2.x
# Go back to the original working tree
popd
# Delete the working tree
git worktree remove ../.worktrees/OpenSearch/backport-2.x Then, create a pull request where the |
Description
As discussed in #16061, this PR focuses on optimizing
flat_object
type in a BWC way. I benchmarked this change using noaa workload and set the type of fieldstation
asflat_object
, the result is as follows.Related Issues
Resolves #[Issue number to be closed when this PR is merged]
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.