Bump semver_dialects gem version
What does this MR do and why?
Bump version of semver_dialects gem from 1.5.0 to 1.6.0 This version has performance improvements which improve performance of license scanning features. This improves issues with request timeouts on various pages such as license compliance or the pipelines page.
Some testing data is available here: #435272 (comment 1735216681)
Profiling info for my gdk for a pipeline with 9000 components shows the Kernel#Integer
call (causing the performance degradation) go from taking 31%
to 3.2%
of request time. As a result the overall request time has fallen to 11s from 22s+.
MR acceptance checklist
Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
Screenshots
Before | After |
---|---|
~20s load time | ~10s load time |
semver_dialects.1.5.0.left-heavy | semver_dialects.1.6.0.left-heavy |
How to set up and validate locally
For both the master
and this branch in your local gdk:
- Check out this branch
- Create project by importing 2024-01-23_17-32-260_root_rack-timeout-test_export.tar.gz (10k sbom components)
-
Pipelines > Run Pipeline
againstadd-sboms
branch - Load the pipeline page and open the
Wall
flamegraph (keep this tab open for quick comparison or export it) - Check out
master
branch gdk restart rails-web
- Re-run step 4, compare load time as well as flamegraph
Related: #435272 (closed)