Skip to content

Commit 56c111e

Browse files
stevendannaarulajmani
authored andcommitted
roachtest: skip many perturbation tests
These tests are useful for a few reasons: 1. They are very sensitive to latency outliers (something we care about!). 2. They test our ability to post-mortem debug non-fatal issues such as latency increases. 3. They help ensure that the impact of the given perturbations don't get worse. Unfortunately, they also result in a large number of time-consuming failures. Our strategy to bring them under control is to skip those with high failure rates and then work, as time allows, to re-enable them one by one. Epic: none Release note: None
1 parent 5915f7d commit 56c111e

File tree

1 file changed

+24
-18
lines changed

1 file changed

+24
-18
lines changed

pkg/cmd/roachtest/tests/perturbation/framework.go

Lines changed: 24 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -267,27 +267,31 @@ func setup(p perturbation, acceptableChange float64) variations {
267267
return v
268268
}
269269

270-
func register(r registry.Registry, p perturbation) {
271-
// Metamorphic perturbation tests are currently disabled. See
270+
func register(r registry.Registry, p perturbation, skipReason string) {
271+
// All metamorphic perturbation tests are currently disabled. See
272272
// https://github.com/cockroachdb/cockroach/issues/142148.
273-
// addMetamorphic(r, p)
274-
addFull(r, p)
273+
addMetamorphic(r, p, "#142148")
274+
addFull(r, p, skipReason)
275275
addDev(r, p)
276276
}
277277

278278
func RegisterTests(r registry.Registry) {
279-
// NB: If these tests fail because they are flaky, increase the numbers
280-
// until they pass. Additionally add the seed (from the log) that caused
281-
// them to fail as a comment in the test.
282-
register(r, restart{})
283-
register(r, partition{})
284-
register(r, addNode{})
285-
register(r, decommission{})
286-
register(r, backfill{})
287-
register(r, &slowDisk{})
288-
register(r, elasticWorkload{})
289-
register(r, intents{})
290-
register(r, backup{})
279+
const notSkipped = ""
280+
const skippedByBankruptcy = "#149662"
281+
282+
register(r, restart{}, notSkipped)
283+
register(r, backup{}, notSkipped)
284+
285+
// TODO(ssd): We skipped the majority of these tests so that we can focus on
286+
// one at a time. These are vaguely ordered by their previous pass rate
287+
// (highest first).
288+
register(r, intents{}, skippedByBankruptcy)
289+
register(r, decommission{}, skippedByBankruptcy)
290+
register(r, elasticWorkload{}, skippedByBankruptcy)
291+
register(r, partition{}, skippedByBankruptcy)
292+
register(r, backfill{}, notSkipped)
293+
register(r, &slowDisk{}, skippedByBankruptcy)
294+
register(r, addNode{}, skippedByBankruptcy)
291295
}
292296

293297
func (v variations) makeClusterSpec() spec.ClusterSpec {
@@ -385,13 +389,14 @@ func (v *variations) applyEnvOverride(key string, val string) (err error) {
385389
}
386390

387391
//lint:ignore U1000 unused
388-
func addMetamorphic(r registry.Registry, p perturbation) {
392+
func addMetamorphic(r registry.Registry, p perturbation, skipReason string) {
389393
rng, seed := randutil.NewPseudoRand()
390394
v := p.setupMetamorphic(rng)
391395
v.seed = seed
392396
v = v.finishSetup()
393397
r.Add(registry.TestSpec{
394398
Name: fmt.Sprintf("perturbation/metamorphic/%s", v.perturbationName()),
399+
Skip: skipReason,
395400
CompatibleClouds: v.cloud,
396401
Suites: registry.Suites(registry.Perturbation),
397402
Owner: registry.OwnerKV,
@@ -402,11 +407,12 @@ func addMetamorphic(r registry.Registry, p perturbation) {
402407
})
403408
}
404409

405-
func addFull(r registry.Registry, p perturbation) {
410+
func addFull(r registry.Registry, p perturbation, skipReason string) {
406411
v := p.setup()
407412
v = v.finishSetup()
408413
r.Add(registry.TestSpec{
409414
Name: fmt.Sprintf("perturbation/full/%s", v.perturbationName()),
415+
Skip: skipReason,
410416
CompatibleClouds: v.cloud,
411417
Suites: registry.Suites(registry.Nightly),
412418
Owner: registry.OwnerKV,

0 commit comments

Comments
 (0)