Optimize Projects::JobsController spec
What does this MR do and why?
Speeds up Projects::JobsController
spec by about 35 seconds.
This MR doesn't have an issue.
Before:
[TEST PROF INFO] Time spent in factories: 00:37.970 (48.85% of total time)
[TEST PROF INFO] Factories usage
Total: 818
Total top-level: 429
Total time: 00:37.970 (out of 01:26.481)
Total uniq factories: 27
total top-level total time time per call top-level time name
189 188 17.5546s 0.0929s 17.5341s ci_build
160 0 0.9259s 0.0058s 0.0000s ci_stage
160 127 12.1457s 0.0759s 3.2396s ci_pipeline
77 0 1.7818s 0.0231s 0.0000s ci_job_artifact
35 3 13.0108s 0.3717s 4.8011s project
35 0 4.2376s 0.1211s 0.0000s namespace
30 30 8.5640s 0.2855s 8.5640s merge_request
20 16 1.8340s 0.0917s 1.4601s user
19 1 1.4629s 0.0770s 0.1253s owner
18 7 1.4714s 0.0817s 0.5208s ci_trigger
18 7 1.0193s 0.0566s 0.0243s ci_trigger_request
16 16 0.4351s 0.0272s 0.4351s ci_instance_variable
11 11 0.2943s 0.0268s 0.2943s protected_branch
6 6 0.0433s 0.0072s 0.0433s ci_pipeline_variable
5 5 0.1604s 0.0321s 0.1604s ci_runner
4 4 0.0831s 0.0208s 0.0831s ci_bridge
3 3 0.0293s 0.0098s 0.0293s project_build_artifacts_size_refresh
3 0 0.5460s 0.1820s 0.0000s cluster
1 1 0.0109s 0.0109s 0.0109s license
1 1 0.0601s 0.0601s 0.0601s admin
1 1 0.0524s 0.0524s 0.0524s environment
1 1 0.4458s 0.4458s 0.4458s deployment
1 0 0.1041s 0.1041s 0.0000s cluster_provider_gcp
1 0 0.1473s 0.1473s 0.0000s cluster_platform_kubernetes
1 1 0.0867s 0.0867s 0.0867s group
1 0 0.0040s 0.0040s 0.0000s namespace_settings
1 0 0.0054s 0.0054s 0.0000s namespace_ci_cd_settings
After:
[TEST PROF INFO] Time spent in factories: 00:13.100 (28.56% of total time)
[TEST PROF INFO] Factories usage
Total: 558
Total top-level: 306
Total time: 00:13.100 (out of 00:53.341)
Total uniq factories: 28
total top-level total time time per call top-level time name
190 188 7.1224s 0.0375s 6.8672s ci_build
161 1 0.8995s 0.0056s 0.1019s ci_stage
78 1 1.6730s 0.0214s 0.2782s ci_job_artifact
28 27 0.4951s 0.0177s 0.3613s ci_pipeline
17 17 0.9134s 0.0537s 0.9134s user
16 16 0.1994s 0.0125s 0.1994s ci_instance_variable
11 11 0.2845s 0.0259s 0.2845s protected_branch
8 8 0.0517s 0.0065s 0.0517s ci_trigger_request
8 7 0.0647s 0.0081s 0.0471s ci_trigger
6 3 1.9660s 0.3277s 1.7028s project
6 6 0.0381s 0.0064s 0.0381s ci_pipeline_variable
5 5 0.1480s 0.0296s 0.1480s ci_runner
4 4 0.0754s 0.0189s 0.0754s ci_bridge
3 3 0.0173s 0.0058s 0.0173s project_build_artifacts_size_refresh
3 0 0.1793s 0.0598s 0.0000s cluster
2 2 0.1110s 0.0555s 0.1110s owner
1 1 0.0072s 0.0072s 0.0072s license
1 1 0.9215s 0.9215s 0.9215s merge_request
1 1 0.0369s 0.0369s 0.0369s admin
1 0 0.0989s 0.0989s 0.0000s ci_empty_pipeline
1 1 0.0537s 0.0537s 0.0537s environment
1 1 0.2271s 0.2271s 0.2271s deployment
1 0 0.0421s 0.0421s 0.0000s cluster_provider_gcp
1 0 0.0657s 0.0657s 0.0000s cluster_platform_kubernetes
1 1 0.0741s 0.0741s 0.0741s group
1 0 0.0038s 0.0038s 0.0000s namespace_settings
1 0 0.0042s 0.0042s 0.0000s namespace_ci_cd_settings
1 1 0.5830s 0.5830s 0.5830s namespace
Edited by Allison Browne