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

Disable concurrent segment search for system indices and throttled search requests #12954

Merged
merged 1 commit into from
Mar 28, 2024

Conversation

jed326
Copy link
Collaborator

@jed326 jed326 commented Mar 27, 2024

Description

From the problem described in #12951, we need to maintain the threadpool isolation for system_read and search_throttled search requests. The threadpool used is decided here:

private Executor getExecutor(IndexShard indexShard) {
assert indexShard != null;
final String executorName;
if (indexShard.isSystem()) {
executorName = Names.SYSTEM_READ;
} else if (indexShard.indexSettings().isSearchThrottled()) {
executorName = Names.SEARCH_THROTTLED;
} else {
executorName = Names.SEARCH;
}
return threadPool.executor(executorName);
}

This PR disables concurrent segment search when either system indices or throttled indices are present using the same logic as above.

Related Issues

Resolves #12951

Check List

  • New functionality includes testing.
    • All tests pass
  • New functionality has been documented.
    • New functionality has javadoc added
  • Failing checks are inspected and point to the corresponding known issue(s) (See: Troubleshooting Failing Builds)
  • Commits are signed per the DCO using --signoff
  • Commit changes are listed out in CHANGELOG.md file (See: Changelog)
    - [] Public documentation issue/PR created

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:Performance labels Mar 27, 2024
Copy link
Contributor

❌ Gradle check result for 1ddef54: 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

github-actions bot commented Mar 28, 2024

Compatibility status:

Checks if related components are compatible with change 60fb88e

Incompatible components

Skipped components

Compatible components

Compatible components: [https://github.com/opensearch-project/custom-codecs.git, https://github.com/opensearch-project/asynchronous-search.git, https://github.com/opensearch-project/performance-analyzer-rca.git, https://github.com/opensearch-project/cross-cluster-replication.git, https://github.com/opensearch-project/flow-framework.git, https://github.com/opensearch-project/job-scheduler.git, https://github.com/opensearch-project/reporting.git, https://github.com/opensearch-project/security.git, https://github.com/opensearch-project/geospatial.git, https://github.com/opensearch-project/opensearch-oci-object-storage.git, https://github.com/opensearch-project/common-utils.git, https://github.com/opensearch-project/k-nn.git, https://github.com/opensearch-project/neural-search.git, https://github.com/opensearch-project/anomaly-detection.git, https://github.com/opensearch-project/security-analytics.git, https://github.com/opensearch-project/performance-analyzer.git, https://github.com/opensearch-project/ml-commons.git, https://github.com/opensearch-project/notifications.git, https://github.com/opensearch-project/observability.git, https://github.com/opensearch-project/index-management.git, https://github.com/opensearch-project/alerting.git, https://github.com/opensearch-project/sql.git]

Copy link
Contributor

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

@jed326 jed326 added the backport 2.x Backport to 2.x branch label Mar 28, 2024
@github-actions github-actions bot added v2.14.0 v3.0.0 Issues and PRs related to version 3.0.0 labels Mar 28, 2024
Copy link
Contributor

✅ Gradle check result for 68450d8: SUCCESS

Copy link

codecov bot commented Mar 28, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 71.32%. Comparing base (b15cb0c) to head (68450d8).
Report is 105 commits behind head on main.

❗ Current head 68450d8 differs from pull request most recent head 60fb88e. Consider uploading reports for the commit 60fb88e to get more accurate results

Additional details and impacted files
@@             Coverage Diff              @@
##               main   #12954      +/-   ##
============================================
- Coverage     71.42%   71.32%   -0.10%     
- Complexity    59978    60266     +288     
============================================
  Files          4985     5017      +32     
  Lines        282275   284021    +1746     
  Branches      40946    41147     +201     
============================================
+ Hits         201603   202586     +983     
- Misses        63999    64633     +634     
- Partials      16673    16802     +129     

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

…arch requests

Signed-off-by: Jay Deng <jayd0104@gmail.com>
Copy link
Contributor

✅ Gradle check result for 60fb88e: SUCCESS

@sohami sohami merged commit eba3b57 into opensearch-project:main Mar 28, 2024
28 checks passed
@opensearch-trigger-bot
Copy link
Contributor

The backport to 2.x failed:

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

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-12954-to-2.x
# Cherry-pick the merged commit of this pull request and resolve the conflicts
git cherry-pick -x --mainline 1 eba3b572a2ed778ac62cce661a894c7f561ecd48
# Push it to GitHub
git push --set-upstream origin backport/backport-12954-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 base branch is 2.x and the compare/head branch is backport/backport-12954-to-2.x.

jed326 added a commit to jed326/OpenSearch that referenced this pull request Mar 28, 2024
…arch requests (opensearch-project#12954)

Signed-off-by: Jay Deng <jayd0104@gmail.com>
jed326 added a commit to jed326/OpenSearch that referenced this pull request Mar 28, 2024
…arch requests (opensearch-project#12954)

Signed-off-by: Jay Deng <jayd0104@gmail.com>
reta pushed a commit that referenced this pull request Mar 29, 2024
…arch requests (#12954) (#12973)

Signed-off-by: Jay Deng <jayd0104@gmail.com>
shiv0408 pushed a commit to Gaurav614/OpenSearch that referenced this pull request Apr 25, 2024
…arch requests (opensearch-project#12954)

Signed-off-by: Jay Deng <jayd0104@gmail.com>
Signed-off-by: Shivansh Arora <hishiv@amazon.com>
harshavamsi pushed a commit to harshavamsi/OpenSearch that referenced this pull request Apr 29, 2024
…arch requests (opensearch-project#12954)

Signed-off-by: Jay Deng <jayd0104@gmail.com>
@jed326 jed326 deleted the issue-12951 branch August 7, 2024 17:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport 2.x Backport to 2.x branch backport-failed enhancement Enhancement or improvement to existing feature or request Search:Performance v2.14.0 v3.0.0 Issues and PRs related to version 3.0.0
Projects
Status: No status
3 participants