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

[Backport 2.x] Increase remote recovery thread pool size #10796

Merged
merged 1 commit into from
Oct 21, 2023

Conversation

opensearch-trigger-bot[bot]
Copy link
Contributor

Backport 1e28738 from #10750.

The remote recovery thread pool does blocking I/O when downloading
files, so the "half processor count max 10" was definitely too small.
This can be shown by triggering recoveries on a node that is also doing
segment replication, and the replication lag will increase due to
contention on that thread pool. Some amount of contention is inevitable,
but the change here to increase the download thread pool, and also limit
the concurrent usage of that thread pool by any single
recovery/replication to 25% of the threads does help.

Long term, we can improve this even further by moving to fully async I/O
to avoid blocking threads in the application on draining InputStreams.

Signed-off-by: Andrew Ross <[email protected]>
(cherry picked from commit 1e28738)
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
@github-actions
Copy link
Contributor

Compatibility status:

Checks if related components are compatible with change b00172f

Incompatible components

Incompatible components: [https://github.com/opensearch-project/security-analytics.git]

Skipped components

Compatible components

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

@github-actions
Copy link
Contributor

Gradle Check (Jenkins) Run Completed with:

@github-actions
Copy link
Contributor

Gradle Check (Jenkins) Run Completed with:

@mch2
Copy link
Member

mch2 commented Oct 21, 2023

Gradle Check (Jenkins) Run Completed with:

#8932

@github-actions
Copy link
Contributor

Gradle Check (Jenkins) Run Completed with:

@codecov
Copy link

codecov bot commented Oct 21, 2023

Codecov Report

Merging #10796 (b00172f) into 2.x (8896f58) will increase coverage by 0.00%.
Report is 3 commits behind head on 2.x.
The diff coverage is 83.05%.

@@            Coverage Diff            @@
##                2.x   #10796   +/-   ##
=========================================
  Coverage     70.94%   70.94%           
- Complexity    58705    58732   +27     
=========================================
  Files          4843     4843           
  Lines        277261   277281   +20     
  Branches      40673    40675    +2     
=========================================
+ Hits         196690   196720   +30     
+ Misses        63858    63802   -56     
- Partials      16713    16759   +46     
Files Coverage Δ
.../opensearch/indices/recovery/RecoverySettings.java 83.72% <100.00%> (+0.38%) ⬆️
.../indices/replication/common/ReplicationTarget.java 72.50% <100.00%> (-5.14%) ⬇️
...ain/java/org/opensearch/threadpool/ThreadPool.java 84.00% <100.00%> (-1.11%) ⬇️
...nsearch/index/store/RemoteStoreFileDownloader.java 92.15% <84.00%> (-0.87%) ⬇️
...ices/replication/RemoteStoreReplicationSource.java 85.24% <75.00%> (-5.83%) ⬇️

... and 479 files with indirect coverage changes

@mch2 mch2 merged commit cf26b03 into 2.x Oct 21, 2023
42 of 67 checks passed
@github-actions github-actions bot deleted the backport/backport-10750-to-2.x branch October 21, 2023 05:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants