Remove pipeline_name_search feature flag
What does this MR do and why?
Feature flag pipeline_name_search
has been enabled on gitlab.com for many months now (enabled in June). This MR removes the feature flag.
Feature flag rollout issue: #385864 (closed)
Performance of the query behind the FF: https://console.postgres.ai/gitlab/gitlab-production-ci/sessions/24980/commands/79384
Query
SELECT
"ci_pipelines"."id",
"ci_pipelines"."ref",
"ci_pipelines"."sha",
"ci_pipelines"."before_sha",
"ci_pipelines"."created_at",
"ci_pipelines"."updated_at",
"ci_pipelines"."tag",
"ci_pipelines"."yaml_errors",
"ci_pipelines"."committed_at",
"ci_pipelines"."project_id",
"ci_pipelines"."status",
"ci_pipelines"."started_at",
"ci_pipelines"."finished_at",
"ci_pipelines"."duration",
"ci_pipelines"."user_id",
"ci_pipelines"."lock_version",
"ci_pipelines"."pipeline_schedule_id",
"ci_pipelines"."source",
"ci_pipelines"."config_source",
"ci_pipelines"."protected",
"ci_pipelines"."failure_reason",
"ci_pipelines"."iid",
"ci_pipelines"."merge_request_id",
"ci_pipelines"."source_sha",
"ci_pipelines"."target_sha",
"ci_pipelines"."external_pull_request_id",
"ci_pipelines"."ci_ref_id",
"ci_pipelines"."locked",
"ci_pipelines"."partition_id",
"ci_pipelines"."auto_canceled_by_id"
FROM
"ci_pipelines"
INNER JOIN "ci_pipeline_metadata" ON "ci_pipeline_metadata"."pipeline_id" = "ci_pipelines"."id"
WHERE
"ci_pipelines"."project_id" = 278964
AND "ci_pipelines"."source" != 12
AND "ci_pipeline_metadata"."name" = 'Ruby 3.0 merged_result MR pipeline (community contribution)'
ORDER BY
"ci_pipelines"."id" DESC
LIMIT 20 OFFSET 0
Query performance
Limit (cost=1.13..15724.35 rows=7 width=361) (actual time=0.287..0.588 rows=20 loops=1)
Buffers: shared hit=104 read=4
I/O Timings: read=0.110 write=0.000
-> Nested Loop (cost=1.13..15724.35 rows=7 width=361) (actual time=0.286..0.584 rows=20 loops=1)
Buffers: shared hit=104 read=4
I/O Timings: read=0.110 write=0.000
-> Index Only Scan Backward using index_pipeline_metadata_on_name_pipeline_id_text_pattern on public.ci_pipeline_metadata (cost=0.56..140.88 rows=4333 width=8) (actual time=0.171..0.174 rows=20 loops=1)
Index Cond: (ci_pipeline_metadata.name = 'Ruby 3.0 merged_result MR pipeline (community contribution)'::text)
Heap Fetches: 0
Buffers: shared hit=1 read=4
I/O Timings: read=0.110 write=0.000
-> Index Scan using index_ci_pipelines_on_project_id_and_id_desc on public.ci_pipelines (cost=0.57..3.60 rows=1 width=361) (actual time=0.020..0.020 rows=1 loops=20)
Index Cond: ((ci_pipelines.project_id = 278964) AND (ci_pipelines.id = ci_pipeline_metadata.pipeline_id))
Filter: (ci_pipelines.source <> 12)
Rows Removed by Filter: 0
Buffers: shared hit=103
I/O Timings: read=0.000 write=0.000
Time: 11.237 ms
- planning: 10.518 ms
- execution: 0.719 ms
- I/O read: 0.110 ms
- I/O write: 0.000 ms
Shared buffers:
- hits: 104 (~832.00 KiB) from the buffer pool
- reads: 4 (~32.00 KiB) from the OS file cache, including disk I/O
- dirtied: 0
- writes: 0
Screenshots or screen recordings
Screenshots are required for UI changes, and strongly recommended for all other merge requests.
Before | After |
---|---|
How to set up and validate locally
Numbered steps to set up and validate the change are strongly suggested.
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
Edited by Reuben Pereira