Remove batch_preload_pipeline_job_associations feature flag

What does this MR do and why?

Removes the batch_preload_pipeline_job_associations feature flag. The pipeline jobs GraphQL field (project.pipeline.jobs) now always batch-preloads the CI associations that CiJob fields read. Each page loads them once instead of once per job.

  • Resolvers::Ci::JobsResolver always applies the lookahead preloads.
  • Removes the flag's YAML definition.
  • The spec that compared enabled and disabled responses now checks the preloaded data directly, without a flag stub. The N+1 query spec is unchanged.

The flag was added in !256452 (merged). The sibling flag batch_pipeline_job_policy_checks is separate and stays as is.

References

Screenshots or screen recordings

Not applicable. This is a backend change, and the returned data doesn't change.

How to set up and validate locally

  1. Open a pipeline's Jobs tab, or run a project { pipeline { jobs { nodes { ... } } } } query in GraphiQL.
  2. Confirm the jobs render the same as before and the page makes fewer SQL queries.

Before merging, confirm the flag is fully enabled on GitLab.com. After merging, run:

/chatops gitlab run release check <merge-request-url> 19.5
/chatops gitlab run feature delete batch_preload_pipeline_job_associations --dev --pre --staging --staging-ref --production

MR acceptance checklist

Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Merge request reports

Loading
Loading