Draft: PoC: split build metadata into job_prototype
and ci_builds
tables
What does this MR do and why?
References
This merge request introduces a new architecture for storing CI job data by splitting it across multiple tables. It adds a new model JobPrototype
to store immutable job configuration data that can be reused across pipelines, and moves mutable and intrinsic job information to p_ci_builds
. The code moves functionality from BuildMetadata
to these models, updates related methods to work with both old and new data structures, and adds feature flag protection for the transition. This change aims to improve performance and reduce database size by eliminating redundant job configuration data, as the same job configurations are often repeated across many pipelines.
Related to Proposal: Deduplicate jobs's immutable metadata (#547859 - closed)
Screenshots or screen recordings
Before | After |
---|---|
How to set up and validate locally
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.