Skip to content

Commit 26775a7

Browse files
committed
roachtest: increase verbosity of errors in failed compactions in fixtures
This patch adds a bit more verbosity to the failed compactions in the fixture generation roachtests to make debugging easier. Epic: None Release note: None
1 parent 7f2338b commit 26775a7

File tree

1 file changed

+20
-18
lines changed

1 file changed

+20
-18
lines changed

pkg/cmd/roachtest/tests/backup_fixtures.go

Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -290,7 +290,7 @@ func (bd *backupDriver) monitorBackups(ctx context.Context) error {
290290
if bd.sp.fixture.CompactionThreshold > 0 {
291291
bd.t.L().Printf("%d compaction jobs succeeded, %d running", len(compSuccess), len(compRunning))
292292
if len(compFailed) > 0 {
293-
return errors.Newf("compaction jobs with ids %v failed", compFailed)
293+
return errors.Newf("compaction jobs failed: %v", compFailed)
294294
}
295295
}
296296

@@ -307,7 +307,7 @@ func (bd *backupDriver) monitorBackups(ctx context.Context) error {
307307
}
308308
case WaitingCompactions:
309309
if len(compFailed) > 0 {
310-
return errors.Newf("compaction jobs with ids %v failed", compFailed)
310+
return errors.Newf("compaction jobs failed: %v", compFailed)
311311
} else if len(compRunning) > 0 {
312312
bd.t.L().Printf("waiting for %d compaction jobs to finish", len(compRunning))
313313
} else {
@@ -318,41 +318,43 @@ func (bd *backupDriver) monitorBackups(ctx context.Context) error {
318318
return nil
319319
}
320320

321+
type jobMeta struct {
322+
jobID jobspb.JobID
323+
state jobs.State
324+
error string
325+
}
326+
321327
// compactionJobStates returns the state of the compaction jobs, returning
322-
// the IDs of the jobs that succeeded, are running, and failed.
328+
// a partition of jobs that succeeded, are running, and failed.
323329
func (bd *backupDriver) compactionJobStates(
324330
sql *sqlutils.SQLRunner,
325-
) ([]jobspb.JobID, []jobspb.JobID, []jobspb.JobID, error) {
331+
) ([]jobMeta, []jobMeta, []jobMeta, error) {
326332
if bd.sp.fixture.CompactionThreshold == 0 {
327333
return nil, nil, nil, nil
328334
}
329-
type Job struct {
330-
jobID jobspb.JobID
331-
status jobs.State
332-
}
333-
compactionQuery := `SELECT job_id, status FROM [SHOW JOBS] WHERE job_type = 'BACKUP' AND
335+
compactionQuery := `SELECT job_id, status, error FROM [SHOW JOBS] WHERE job_type = 'BACKUP' AND
334336
description ILIKE 'COMPACT BACKUPS%'`
335337
rows := sql.Query(bd.t, compactionQuery)
336338
defer rows.Close()
337-
var compJobs []Job
339+
var compJobs []jobMeta
338340
for rows.Next() {
339-
var job Job
340-
if err := rows.Scan(&job.jobID, &job.status); err != nil {
341+
var job jobMeta
342+
if err := rows.Scan(&job.jobID, &job.state, &job.error); err != nil {
341343
return nil, nil, nil, errors.Wrapf(err, "error scanning compaction job")
342344
}
343345
compJobs = append(compJobs, job)
344346
}
345-
var successes, running, failures []jobspb.JobID
347+
var successes, running, failures []jobMeta
346348
for _, job := range compJobs {
347-
switch job.status {
349+
switch job.state {
348350
case jobs.StateSucceeded:
349-
successes = append(successes, job.jobID)
351+
successes = append(successes, job)
350352
case jobs.StateRunning:
351-
running = append(running, job.jobID)
353+
running = append(running, job)
352354
case jobs.StateFailed:
353-
failures = append(failures, job.jobID)
355+
failures = append(failures, job)
354356
default:
355-
bd.t.L().Printf(`unexpected compaction job %d in state %s`, job.jobID, job.status)
357+
bd.t.L().Printf(`unexpected compaction job %d in state %s`, job.jobID, job.state)
356358
}
357359
}
358360
return successes, running, failures, nil

0 commit comments

Comments
 (0)