-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
Integrate with CPU admission controller for cluster-manager Read API's. #12496
Integrate with CPU admission controller for cluster-manager Read API's. #12496
Conversation
Compatibility status:Checks if related components are compatible with change d9e42b5 Incompatible componentsSkipped componentsCompatible componentsCompatible components: [https://github.com/opensearch-project/custom-codecs.git, https://github.com/opensearch-project/neural-search.git, https://github.com/opensearch-project/flow-framework.git, https://github.com/opensearch-project/observability.git, https://github.com/opensearch-project/cross-cluster-replication.git, https://github.com/opensearch-project/security-analytics.git, https://github.com/opensearch-project/job-scheduler.git, https://github.com/opensearch-project/opensearch-oci-object-storage.git, https://github.com/opensearch-project/geospatial.git, https://github.com/opensearch-project/notifications.git, https://github.com/opensearch-project/k-nn.git, https://github.com/opensearch-project/asynchronous-search.git, https://github.com/opensearch-project/reporting.git, https://github.com/opensearch-project/sql.git, https://github.com/opensearch-project/ml-commons.git, https://github.com/opensearch-project/common-utils.git, https://github.com/opensearch-project/index-management.git, https://github.com/opensearch-project/performance-analyzer-rca.git, https://github.com/opensearch-project/security.git, https://github.com/opensearch-project/anomaly-detection.git, https://github.com/opensearch-project/alerting.git, https://github.com/opensearch-project/performance-analyzer.git] |
❌ Gradle check result for 68968cf: 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.
Thanks @rajiv-kv. On high level this looks good. Left few comments/ clarifications.
...java/org/opensearch/action/support/clustermanager/TransportClusterManagerNodeReadAction.java
Outdated
Show resolved
Hide resolved
...ain/java/org/opensearch/action/support/clustermanager/TransportClusterManagerNodeAction.java
Show resolved
Hide resolved
...a/org/opensearch/ratelimitting/admissioncontrol/controllers/CpuBasedAdmissionController.java
Show resolved
Hide resolved
server/src/main/java/org/opensearch/action/support/HandledTransportAction.java
Outdated
Show resolved
Hide resolved
.../opensearch/ratelimitting/admissioncontrol/settings/CpuBasedAdmissionControllerSettings.java
Show resolved
Hide resolved
...java/org/opensearch/action/support/clustermanager/TransportClusterManagerNodeReadAction.java
Outdated
Show resolved
Hide resolved
server/src/main/java/org/opensearch/action/support/HandledTransportAction.java
Outdated
Show resolved
Hide resolved
❌ Gradle check result for 8f3a5ea: 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? |
❌ Gradle check result for 40fb58c: 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? |
@rajiv-kv : Below test failed again.
|
❌ Gradle check result for f55fe37: 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? |
org.opensearch.snapshots.SegmentReplicationSnapshotIT.testSnapshotOnDocRep_RestoreOnSegRep |
The admission control is enforced at the transport layer. Signed-off-by: Rajiv Kumar Vaidyanathan <rajivkv@amazon.com>
Signed-off-by: Rajiv Kumar Vaidyanathan <rajivkv@amazon.com>
Signed-off-by: Rajiv Kumar Vaidyanathan <rajivkv@amazon.com>
Signed-off-by: Rajiv Kumar Vaidyanathan <rajivkv@amazon.com>
Signed-off-by: Rajiv Kumar Vaidyanathan <rajivkv@amazon.com>
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-12496-to-2.x
# Cherry-pick the merged commit of this pull request and resolve the conflicts
git cherry-pick -x --mainline 1 2069bd805804dd93bd69695a4c6521cc6f2b9bb6
# Push it to GitHub
git push --set-upstream origin backport/backport-12496-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 |
…s. (opensearch-project#12496) * Integrate with CPU admission controller for cluster-manager Read API's. The admission control is enforced at the transport layer. Signed-off-by: Rajiv Kumar Vaidyanathan <rajivkv@amazon.com>
…s. (opensearch-project#12496) * Integrate with CPU admission controller for cluster-manager Read API's. The admission control is enforced at the transport layer. Signed-off-by: Rajiv Kumar Vaidyanathan <rajivkv@amazon.com>
…s. (opensearch-project#12496) * Integrate with CPU admission controller for cluster-manager Read API's. The admission control is enforced at the transport layer. Signed-off-by: Rajiv Kumar Vaidyanathan <rajivkv@amazon.com> Signed-off-by: Shivansh Arora <hishiv@amazon.com>
Description
Read actions of ClusterManager are integrated with admission control at transport layer. These transport actions are used by Admin API's to retrive information such as stats and metadata from cluster-state.
Sub-classes of
TransportClusterManagerNodeReadAction
that already have Circuit breaker limit enforced today have been additionally enforced with admission control. Action TypeCLUSTER_INFO
is introduced to configure admission thresholds & options for the Admin API's.Related Issues
Resolves #7520
Check List
Public documentation issue/PR createdBy 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.