-
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
Adding index create block when all nodes have breached high disk watermark #5852
Adding index create block when all nodes have breached high disk watermark #5852
Conversation
Gradle Check (Jenkins) Run Completed with:
|
fd39829
to
76b9782
Compare
Gradle Check (Jenkins) Run Completed with:
|
Gradle Check (Jenkins) Run Completed with:
|
Gradle Check (Jenkins) Run Completed with:
|
76b9782
to
dee1ea0
Compare
Gradle Check (Jenkins) Run Completed with:
|
dee1ea0
to
79bade6
Compare
Gradle Check (Jenkins) Run Completed with:
|
79bade6
to
4ee5693
Compare
Gradle Check (Jenkins) Run Completed with:
|
Codecov Report
@@ Coverage Diff @@
## main #5852 +/- ##
============================================
+ Coverage 70.57% 70.84% +0.27%
- Complexity 58486 58730 +244
============================================
Files 4770 4770
Lines 280721 280743 +22
Branches 40536 40539 +3
============================================
+ Hits 198123 198901 +778
+ Misses 66228 65502 -726
+ Partials 16370 16340 -30
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. |
a8787d6
to
888c720
Compare
Gradle Check (Jenkins) Run Completed with:
|
888c720
to
b5b12f3
Compare
Gradle Check (Jenkins) Run Completed with:
|
Gradle Check (Jenkins) Run Completed with:
|
dceeb82
to
b8dfc29
Compare
Gradle Check (Jenkins) Run Completed with:
|
b8dfc29
to
e6ac695
Compare
Gradle Check (Jenkins) Run Completed with:
|
6ba0f38
to
08ae9be
Compare
Gradle Check (Jenkins) Run Completed with:
|
server/src/main/java/org/opensearch/cluster/routing/allocation/DiskThresholdMonitor.java
Show resolved
Hide resolved
…rmark Signed-off-by: Rishav Sagar <rissag@amazon.com>
b8d232d
to
f401496
Compare
Gradle Check (Jenkins) Run Completed with:
|
Gradle Check (Jenkins) Run Completed with:
|
ActionListener<Void> wrappedListener = ActionListener.wrap(r -> { | ||
setLastRunTimeMillis(); | ||
listener.onResponse(r); | ||
}, e -> { | ||
ActionListener<Void> wrappedListener = ActionListener.wrap(r -> { listener.onResponse(r); }, e -> { |
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.
for my understanding y did we remove last run time?
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.
As commented by Gaurav here, setLastRunTimeMillis()
is only meant for reroute operations as it needs to honor diskThresholdSettings.getRerouteInterval().millis()
, so removing it from updateIndicesReadOnly
as well.
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.
If we remove setLastRunTimeMillis
it will try to reroute once even though we don't need to reroute.
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.
Addressed the comment
Signed-off-by: Rishav Sagar <rissag@amazon.com>
f401496
to
0c5ed1f
Compare
Gradle Check (Jenkins) Run Completed with:
|
…rmark (#5852) (#6165) * Adding index create block when all nodes have breached high disk watermark (cherry picked from commit 6309611) Signed-off-by: Rishav Sagar <rissag@amazon.com> Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
@RS146BIJAY: Will the index creation cluster block be lifted automatically when one or more nodes fall below the watermark again? |
…rmark
Signed-off-by: Rishav Sagar rissag@amazon.com
Description
OpenSearch stops allocating any shards to nodes that have breached High Disk Watermark. If a scenario arises that all the nodes in the cluster breached high disk watermark, no new shards will be created on this cluster. Now if we try to create a new index on this cluster, it will be a red index (since no primary or replica shards can be created for this index).
In order to prevent red cluster, we propose that whenever all the nodes in the cluster has breached high disk watermark we apply a INDEX CREATE BLOCK on the cluster to prevent creation of any red indices. We will modify the DiskThresholdMonitor (which monitors for disk watermarks thresholds on a domain and take appropriate action) to include an extra check on whether low disk watermark is breached on all the nodes in cluster. If it has, it will apply an index create block on the entire cluster.
Issues Resolved
#4456
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.