diff --git a/.config/nextest.toml b/.config/nextest.toml index ba28fa0625..32fe543655 100644 --- a/.config/nextest.toml +++ b/.config/nextest.toml @@ -33,6 +33,11 @@ clickhouse-cluster = { max-threads = 1 } filter = 'package(oximeter-db) and test(replicated)' test-group = 'clickhouse-cluster' +[[profile.default.overrides]] +# These tests can time out under heavy contention. +filter = 'binary_id(omicron-nexus::test_all) and test(::schema::)' +threads-required = 4 + [[profile.ci.overrides]] filter = 'binary_id(omicron-nexus::test_all)' # As of 2023-01-08, the slowest test in test_all takes 196s on a Ryzen 7950X. diff --git a/nexus/tests/integration_tests/schema.rs b/nexus/tests/integration_tests/schema.rs index f183b53282..872627728e 100644 --- a/nexus/tests/integration_tests/schema.rs +++ b/nexus/tests/integration_tests/schema.rs @@ -479,10 +479,14 @@ async fn nexus_applies_update_on_boot() { // Start Nexus. It should auto-format itself to the latest version, // upgrading through each intermediate update. // + // The timeout here is a bit longer than usual (120s vs 60s) because if + // lots of tests are running at the same time, there can be contention + // here. + // // NOTE: If this grows excessively, we could break it into several smaller // tests. assert!( - timeout(Duration::from_secs(60), builder.start_nexus_internal()) + timeout(Duration::from_secs(120), builder.start_nexus_internal()) .await .is_ok(), "Nexus should have started"