From e144e736f36689f5dc04e62eeb05d57b49aee9cf Mon Sep 17 00:00:00 2001 From: discord9 <55937128+discord9@users.noreply.github.com> Date: Wed, 16 Sep 2026 19:48:40 +0800 Subject: [PATCH] test(perf): move high-cardinality constant-tag cases to the heavy set The 10k and 100k constant-tag direct-SST cases repeatedly kill the self-hosted query-regression runner (lost communication during the run), while the default-cardinality case passes. Move them out of the default 'all' set into the heavy set so they only run on demand (case=heavy or the heavy-regression label), and qualify them locally instead. Signed-off-by: discord9 <55937128+discord9@users.noreply.github.com> --- .github/scripts/query-regression-run.py | 5 +++++ tests/perf/test_query_regression_case_selection.py | 8 ++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/.github/scripts/query-regression-run.py b/.github/scripts/query-regression-run.py index 6da7c896d67..d488cee1594 100644 --- a/.github/scripts/query-regression-run.py +++ b/.github/scripts/query-regression-run.py @@ -45,6 +45,11 @@ DEFAULT_CASES = [ HEAVY_CASES = [ "tests/perf/query_cases/prom_remote_write_7913/case.toml", + # High-cardinality direct-SST cases exceed the default query-regression + # runner's resources (the self-hosted runner is repeatedly lost during the + # run). Keep them in the heavy set so they only run on demand. + "tests/perf/query_cases/promql_constant_tag_concat_ms_10k/case.toml", + "tests/perf/query_cases/promql_constant_tag_concat_ms_100k/case.toml", ] CASE_GROUPS = { diff --git a/tests/perf/test_query_regression_case_selection.py b/tests/perf/test_query_regression_case_selection.py index 04a542e23ad..16ba7261428 100644 --- a/tests/perf/test_query_regression_case_selection.py +++ b/tests/perf/test_query_regression_case_selection.py @@ -51,10 +51,14 @@ class QueryRegressionCaseSelectionTest(unittest.TestCase): self.assertEqual(len(runner.DEFAULT_CASES), 9) self.assertEqual(runner.split_cases([]), runner.DEFAULT_CASES) - def test_heavy_selects_only_remote_write_7913(self) -> None: + def test_heavy_selects_the_heavy_case_set(self) -> None: self.assertEqual( runner.split_cases(["heavy"]), - ["tests/perf/query_cases/prom_remote_write_7913/case.toml"], + [ + "tests/perf/query_cases/prom_remote_write_7913/case.toml", + "tests/perf/query_cases/promql_constant_tag_concat_ms_10k/case.toml", + "tests/perf/query_cases/promql_constant_tag_concat_ms_100k/case.toml", + ], ) def test_explicit_paths_remain_selectable(self) -> None: