Skip to content

Commit 1e676ab

Browse files
Stabilize SLM REST Tests (#46195)
Unfortunately, #42791 destabilized SLM tests because those tests use rate limiting the snapshot write rate to a very low value globally. Now that the various files in a snapshot get uploaded in parallel this can lead to a few threads in parallel way overshooting the low value throughput value used by the rate limiter and then making it wait for minutes which times out the tests that then try to abort the snapshot (see #21759 for details, aborting a snapshot only happens when writing bytes to the repository). For now the old behavior of the test from before my changes can be restored by moving to a single threaded snapshot pool but we should find a better way of testing the SLM behaviour here in a follow-up.
1 parent 3499b58 commit 1e676ab

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

x-pack/plugin/ilm/qa/multi-node/build.gradle

+4-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
import org.elasticsearch.gradle.test.RestIntegTestTask
2-
31
apply plugin: 'elasticsearch.testclusters'
42
apply plugin: 'elasticsearch.standalone-rest-test'
53
apply plugin: 'elasticsearch.rest-test'
@@ -27,4 +25,8 @@ testClusters.integTest {
2725
setting 'xpack.ml.enabled', 'false'
2826
setting 'xpack.license.self_generated.type', 'trial'
2927
setting 'indices.lifecycle.poll_interval', '1000ms'
28+
// TODO: Find a way to run these tests with more than one snapshot pool thread. Currently we need to limit to one thread so that the
29+
// rate limiting settings in SnapshotLifecycleIT doesn't result in blocked snapshot threads because multiple threads overshoot
30+
// the limit simultaneously and the rate limiter then moves to wait minutes to make up for this.
31+
setting 'thread_pool.snapshot.max', '1'
3032
}

0 commit comments

Comments
 (0)