diff --git a/pkg/cmd/roachtest/registry/owners.go b/pkg/cmd/roachtest/registry/owners.go index 950666d9ca65..1278f0b3cab1 100644 --- a/pkg/cmd/roachtest/registry/owners.go +++ b/pkg/cmd/roachtest/registry/owners.go @@ -25,7 +25,7 @@ const ( OwnerAdmissionControl Owner = `admission-control` OwnerObservability Owner = `obs-prs` OwnerObservabilityIndia Owner = `obs-india-prs` - OwnerServer Owner = `server` // not currently staffed + OwnerServer Owner = `server` OwnerSQLFoundations Owner = `sql-foundations` OwnerMigrations Owner = `migrations` OwnerProductSecurity Owner = `product-security` diff --git a/pkg/cmd/roachtest/tests/backup_restore_roundtrip.go b/pkg/cmd/roachtest/tests/backup_restore_roundtrip.go index d8a42ada7bf5..08e49f5e16a6 100644 --- a/pkg/cmd/roachtest/tests/backup_restore_roundtrip.go +++ b/pkg/cmd/roachtest/tests/backup_restore_roundtrip.go @@ -10,6 +10,7 @@ import ( gosql "database/sql" "fmt" "math/rand" + "strings" "time" "github.com/cockroachdb/cockroach/pkg/cmd/roachtest/cluster" @@ -254,9 +255,19 @@ func startBackgroundWorkloads( if err != nil { return nil, err } + + handleChemaChangeError := func(err error) error { + // If the UNEXPECTED ERROR detail appears, the workload likely flaked. + // Otherwise, the workload could have failed due to other reasons like a node + // crash. + if err != nil && strings.Contains(errors.FlattenDetails(err), "UNEXPECTED ERROR") { + return registry.ErrorWithOwner(registry.OwnerSQLFoundations, errors.Wrapf(err, "schema change workload failed")) + } + return err + } err = c.RunE(ctx, option.WithNodes(workloadNode), scInit.String()) if err != nil { - return nil, registry.ErrorWithOwner(registry.OwnerSQLFoundations, errors.Wrapf(err, "failed to init schema change workload")) + return nil, handleChemaChangeError(err) } run := func() (func(), error) { @@ -264,7 +275,6 @@ func startBackgroundWorkloads( if err != nil { return nil, err } - stopBank := workloadWithCancel(m, func(ctx context.Context) error { return c.RunE(ctx, option.WithNodes(workloadNode), bankRun.String()) }) @@ -274,7 +284,7 @@ func startBackgroundWorkloads( }) stopSC := workloadWithCancel(m, func(ctx context.Context) error { if err := c.RunE(ctx, option.WithNodes(workloadNode), scRun.String()); err != nil { - return registry.ErrorWithOwner(registry.OwnerSQLFoundations, errors.Wrapf(err, "failed to run schema change workload")) + return handleChemaChangeError(err) } return nil }) diff --git a/pkg/cmd/roachtest/tests/multitenant_upgrade.go b/pkg/cmd/roachtest/tests/multitenant_upgrade.go index 8715ba417384..a1085908abd5 100644 --- a/pkg/cmd/roachtest/tests/multitenant_upgrade.go +++ b/pkg/cmd/roachtest/tests/multitenant_upgrade.go @@ -32,7 +32,7 @@ func registerMultiTenantUpgrade(r registry.Registry) { Cluster: r.MakeClusterSpec(7), CompatibleClouds: registry.CloudsWithServiceRegistration, Suites: registry.Suites(registry.Nightly), - Owner: registry.OwnerDisasterRecovery, + Owner: registry.OwnerServer, Run: func(ctx context.Context, t test.Test, c cluster.Cluster) { runMultitenantUpgrade(ctx, t, c) },