Skip to content

jobsprofiler: add ExecutionDetails method to the Resumer interface #109671

@adityamaru

Description

@adityamaru

All of the jobs that have integrated with the jobs profiler so far (backup, restore, C2C) rely on each resumer having a timer based loop and periodically writing state to the job_info table. Which is then surfaced in the Advanced Debugging page. While this works we want to move towards a model where information is only persisted to the job_info table if it has been requested or the job is in a "profiling" mode. To achieve this model we should:

  1. Ensure requesting of execution details is always evaluated on the job's current coordinator.
  2. Add an ExecutionDetails method to the Resumer interface so that each Resumer can determine what they want to do when such details are requested.
  3. Teach the request execution details logic to call this method on the resumer.

A follow up after this will be to allow every job to mark whether it is being profiled or not. When a job is being profiled we should add logic to automatically request these execution details at some configurable rate.

Epic: CRDB-8964

Metadata

Metadata

Assignees

Labels

C-enhancementSolution expected to add code/behavior + preserve backward-compat (pg compat issues are exception)T-disaster-recovery

Type

No type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions