Skip to content

Commit ed14bb7

Browse files
committed
roachtest: disable FIPS for tests that use disk stalls
FIPS is still on Ubuntu 20.04 which uses cgroup v1. However, our disk stall implementation uses cgroup v2. Similarly for dmsetup, the lsblk output changed between 20.04 and 22.04. Instead of supporting different parsing for this edge case, temporarily disable FIPS for any test that uses disk stalls.
1 parent 37dad45 commit ed14bb7

File tree

6 files changed

+26
-13
lines changed

6 files changed

+26
-13
lines changed

pkg/cmd/roachtest/tests/admission_control_disk_bandwidth_overload.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,9 @@ func registerDiskBandwidthOverload(r registry.Registry) {
4040
// for IBM tests, and this test was disabled on Azure as of 05/2025.
4141
CompatibleClouds: registry.AllExceptAzure,
4242
// TODO(aaditya): change to weekly once the test stabilizes.
43-
Suites: registry.Suites(registry.Nightly),
44-
Cluster: r.MakeClusterSpec(2, spec.CPU(8), spec.WorkloadNode(), spec.ReuseNone()),
43+
Suites: registry.Suites(registry.Nightly),
44+
// TODO(darryl): Enable FIPS once we can upgrade to Ubuntu 22 and use cgroups v2 for disk stalls.
45+
Cluster: r.MakeClusterSpec(2, spec.CPU(8), spec.WorkloadNode(), spec.ReuseNone(), spec.Arch(spec.AllExceptFIPS)),
4546
Leases: registry.MetamorphicLeases,
4647
Run: func(ctx context.Context, t test.Test, c cluster.Cluster) {
4748
if c.Spec().NodeCount != 2 {

pkg/cmd/roachtest/tests/admission_control_elastic_mixed_version.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,9 @@ func registerElasticWorkloadMixedVersion(r registry.Registry) {
4242
Monitor: true,
4343
CompatibleClouds: registry.OnlyGCE,
4444
Suites: registry.Suites(registry.MixedVersion, registry.Nightly),
45+
// TODO(darryl): Enable FIPS once we can upgrade to Ubuntu 22 and use cgroups v2 for disk stalls.
4546
Cluster: r.MakeClusterSpec(4, spec.CPU(8),
46-
spec.WorkloadNode(), spec.ReuseNone()),
47+
spec.WorkloadNode(), spec.ReuseNone(), spec.Arch(spec.AllExceptFIPS)),
4748
Run: func(ctx context.Context, t test.Test, c cluster.Cluster) {
4849
require.Equal(t, 4, c.Spec().NodeCount)
4950

pkg/cmd/roachtest/tests/admission_control_snapshot_overload_io.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,8 @@ func registerSnapshotOverloadIO(r registry.Registry) {
4747
spec.VolumeSize(cfg.volumeSize),
4848
spec.ReuseNone(),
4949
spec.DisableLocalSSD(),
50+
// TODO(darryl): Enable FIPS once we can upgrade to Ubuntu 22 and use cgroups v2 for disk stalls.
51+
spec.Arch(spec.AllExceptFIPS),
5052
),
5153
Leases: registry.MetamorphicLeases,
5254
Timeout: 12 * time.Hour,

pkg/cmd/roachtest/tests/disk_stall.go

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,10 @@ import (
3333
// survives a temporary disk stall through failing over to a secondary disk.
3434
func registerDiskStalledWALFailover(r registry.Registry) {
3535
r.Add(registry.TestSpec{
36-
Name: "disk-stalled/wal-failover/among-stores",
37-
Owner: registry.OwnerStorage,
38-
Cluster: r.MakeClusterSpec(4, spec.CPU(16), spec.WorkloadNode(), spec.ReuseNone(), spec.SSD(2)),
36+
Name: "disk-stalled/wal-failover/among-stores",
37+
Owner: registry.OwnerStorage,
38+
// TODO(darryl): Enable FIPS once we can upgrade to Ubuntu 22 and lsblk outputs in the same format.
39+
Cluster: r.MakeClusterSpec(4, spec.CPU(16), spec.WorkloadNode(), spec.ReuseNone(), spec.SSD(2), spec.Arch(spec.AllExceptFIPS)),
3940
CompatibleClouds: registry.OnlyGCE,
4041
Suites: registry.Suites(registry.Nightly),
4142
Timeout: 3 * time.Hour,
@@ -209,7 +210,8 @@ func registerDiskStalledDetection(r registry.Registry) {
209210
Owner: registry.OwnerStorage,
210211
// Use PDs in an attempt to work around flakes encountered when using SSDs.
211212
// See #97968.
212-
Cluster: r.MakeClusterSpec(4, spec.WorkloadNode(), spec.ReuseNone(), spec.DisableLocalSSD()),
213+
// TODO(darryl): Enable FIPS once we can upgrade to Ubuntu 22 and use cgroups v2 for disk stalls.
214+
Cluster: r.MakeClusterSpec(4, spec.WorkloadNode(), spec.ReuseNone(), spec.DisableLocalSSD(), spec.Arch(spec.AllExceptFIPS)),
213215
CompatibleClouds: registry.OnlyGCE,
214216
Suites: registry.Suites(registry.Nightly),
215217
Timeout: 30 * time.Minute,
@@ -437,6 +439,8 @@ func registerDiskStalledWALFailoverWithProgress(r registry.Registry) {
437439
spec.GCEVolumeCount(2),
438440
spec.GCEVolumeType("pd-ssd"),
439441
spec.VolumeSize(100),
442+
// TODO(darryl): Enable FIPS once we can upgrade to Ubuntu 22 and use cgroups v2 for disk stalls.
443+
spec.Arch(spec.AllExceptFIPS),
440444
),
441445
CompatibleClouds: registry.OnlyGCE,
442446
Suites: registry.Suites(registry.Nightly),

pkg/cmd/roachtest/tests/failover.go

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -104,12 +104,13 @@ func registerFailover(r registry.Registry) {
104104
}
105105

106106
r.Add(registry.TestSpec{
107-
Name: "failover/chaos" + readOnlyStr + leasesStr,
108-
Owner: registry.OwnerKV,
109-
Benchmark: true,
110-
Timeout: 90 * time.Minute,
111-
Cluster: r.MakeClusterSpec(10, spec.CPU(2), spec.WorkloadNode(), spec.WorkloadNodeCPU(2), spec.DisableLocalSSD(), spec.ReuseNone()), // uses disk stalls
112-
CompatibleClouds: registry.OnlyGCE, // dmsetup only configured for gce
107+
Name: "failover/chaos" + readOnlyStr + leasesStr,
108+
Owner: registry.OwnerKV,
109+
Benchmark: true,
110+
Timeout: 90 * time.Minute,
111+
// TODO(darryl): Enable FIPS once we can upgrade to Ubuntu 22 and lsblk outputs in the same format.
112+
Cluster: r.MakeClusterSpec(10, spec.CPU(2), spec.WorkloadNode(), spec.WorkloadNodeCPU(2), spec.DisableLocalSSD(), spec.ReuseNone(), spec.Arch(spec.AllExceptFIPS)), // uses disk stalls
113+
CompatibleClouds: registry.OnlyGCE, // dmsetup only configured for gce
113114
Suites: registry.Suites(registry.Nightly),
114115
Leases: leases,
115116
SkipPostValidations: registry.PostValidationNoDeadNodes, // cleanup kills nodes
@@ -172,6 +173,8 @@ func registerFailover(r registry.Registry) {
172173
// Don't reuse the cluster for tests that call dmsetup to avoid
173174
// spurious flakes from previous runs. See #107865
174175
clusterOpts = append(clusterOpts, spec.ReuseNone())
176+
// TODO(darryl): Enable FIPS once we can upgrade to Ubuntu 22 and lsblk outputs in the same format.
177+
clusterOpts = append(clusterOpts, spec.Arch(spec.AllExceptFIPS))
175178
postValidation = registry.PostValidationNoDeadNodes
176179
// dmsetup is currently only configured for gce.
177180
clouds = registry.OnlyGCE

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

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -304,6 +304,8 @@ func (v variations) makeClusterSpec() spec.ClusterSpec {
304304
// Disable cluster reuse to avoid potential cgroup side effects.
305305
if v.perturbationName() == "slowDisk" {
306306
opts = append(opts, spec.ReuseNone())
307+
// TODO(darryl): Enable FIPS once we can upgrade to Ubuntu 22 and use cgroups v2 for disk stalls.
308+
opts = append(opts, spec.Arch(spec.AllExceptFIPS))
307309
}
308310
return spec.MakeClusterSpec(v.numNodes+v.numWorkloadNodes, opts...)
309311
}

0 commit comments

Comments
 (0)