BigW Consortium Gitlab
When displaying the pipelines of a project we now preload the following data: 1. Authors of the commits that belong to these pipelines 2. The number of warnings per pipeline, which is used by Ci::Pipeline#has_warnings? == Commit Authors Previously this data was queried for every Commit separately, leading to 20 SQL queries being executed in the worst case. With an average of 3 to 5 milliseconds per SQL query this could result in 100 milliseconds being spent in _just_ getting Commit authors. To preload this data Commit#author now uses BatchLoader (through Commit#lazy_author), and a separate module Gitlab::Ci::Pipeline::Preloader is used to ensure all authors are loaded before they are used. == Number of warnings This changes Ci::Pipeline#has_warnings? so it supports preloading of the number of warnings per pipeline. This removes the need for executing a COUNT(*) query for every pipeline just to see if it has any warnings or not.
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
api | Loading commit data... | |
assets | Loading commit data... | |
backup | Loading commit data... | |
banzai | Loading commit data... | |
bitbucket | Loading commit data... | |
constraints | Loading commit data... | |
container_registry | Loading commit data... | |
declarative_policy | Loading commit data... | |
generators/rails/post_deployment_migration | Loading commit data... | |
gitaly | Loading commit data... | |
gitlab | Loading commit data... | |
google_api | Loading commit data... | |
haml_lint | Loading commit data... | |
json_web_token | Loading commit data... | |
mattermost | Loading commit data... | |
microsoft_teams | Loading commit data... | |
omni_auth/strategies | Loading commit data... | |
peek | Loading commit data... | |
rouge | Loading commit data... | |
rspec_flaky | Loading commit data... | |
support | Loading commit data... | |
system_check | Loading commit data... | |
tasks | Loading commit data... | |
additional_email_headers_interceptor.rb | Loading commit data... | |
after_commit_queue.rb | Loading commit data... | |
banzai.rb | Loading commit data... | |
carrier_wave_string_file.rb | Loading commit data... | |
declarative_policy.rb | Loading commit data... | |
disable_email_interceptor.rb | Loading commit data... | |
email_template_interceptor.rb | Loading commit data... | |
event_filter.rb | Loading commit data... | |
expand_variables.rb | Loading commit data... | |
extracts_path.rb | Loading commit data... | |
feature.rb | Loading commit data... | |
file_size_validator.rb | Loading commit data... | |
forever.rb | Loading commit data... | |
gitlab.rb | Loading commit data... | |
gt_one_coercion.rb | Loading commit data... | |
milestone_array.rb | Loading commit data... | |
static_model.rb | Loading commit data... | |
system_check.rb | Loading commit data... | |
unfold_form.rb | Loading commit data... | |
uploaded_file.rb | Loading commit data... | |
version_check.rb | Loading commit data... |