Skip to content

Commit

Permalink
tests: make storcon scale test AZ-aware (#9952)
Browse files Browse the repository at this point in the history
## Problem

We have a scale test for the storage controller which also acts as a
good stress test for scheduling stability. However, it created nodes
with no AZs set.

## Summary of changes

- Bump node count to 6 and set AZs on them.

This is a precursor to other AZ-related PRs, to make sure any new code
that's landed is getting scale tested in an AZ-aware environment.
  • Loading branch information
jcsp authored Dec 4, 2024
1 parent dec2e2f commit 60c0d19
Showing 1 changed file with 6 additions and 1 deletion.
7 changes: 6 additions & 1 deletion test_runner/performance/test_storage_controller_scale.py
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ def test_storage_controller_many_tenants(
we don't fall over for a thousand shards.
"""

neon_env_builder.num_pageservers = 5
neon_env_builder.num_pageservers = 6
neon_env_builder.storage_controller_config = {
# Default neon_local uses a small timeout: use a longer one to tolerate longer pageserver restarts.
# TODO: tune this down as restarts get faster (https://github.com/neondatabase/neon/pull/7553), to
Expand All @@ -84,6 +84,11 @@ def test_storage_controller_many_tenants(
compute_reconfigure_listener.control_plane_compute_hook_api
)

AZS = ["alpha", "bravo", "charlie"]
neon_env_builder.pageserver_config_override = lambda ps_cfg: ps_cfg.update(
{"availability_zone": f"az-{AZS[ps_cfg['id'] % len(AZS)]}"}
)

# A small sleep on each call into the notify hook, to simulate the latency of doing a database write
compute_reconfigure_listener.register_on_notify(lambda body: time.sleep(0.01))

Expand Down

1 comment on commit 60c0d19

@github-actions
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

7166 tests run: 6848 passed, 0 failed, 318 skipped (full report)


Flaky tests (4)

Postgres 16

Postgres 15

Postgres 14

Code coverage* (full report)

  • functions: 30.8% (8263 of 26833 functions)
  • lines: 47.8% (65159 of 136334 lines)

* collected from Rust tests only


The comment gets automatically updated with the latest test results
60c0d19 at 2024-12-04T18:21:12.036Z :recycle:

Please sign in to comment.