Skip to content

No Longer Send Legacy Feature Flags [RUN ALL RSPEC] [RUN AS-IF-FOSS]

Andrew Fontaine requested to merge afontaine/filter-legacy-flag into master

What does this MR do?

Legacy feature flags have been deprecated for a while now. The beginning of the removal process is to stop sending them entirely.

This is gated behind 2 feature flags: remove_legacy_flags and remove_legacy_flags_override.

The former is the "main gate" to disable sending legacy feature flags. The latter is an override control to enable for specific projects that have not completed their migration.

Queries

Selecting feature flags by version

https://postgres.ai/console/gitlab/gitlab-production-tunnel-pg12/sessions/4292/commands/14941

SELECT "operations_feature_flags".* FROM "operations_feature_flags" WHERE "operations_feature_flags"."project_id" = 2670515 AND "operations_feature_flags"."version" = 2
 Index Scan using index_operations_feature_flags_on_project_id_and_iid on public.operations_feature_flags  (cost=0.28..32.11 rows=20 width=81) (actual time=4.127..22.671 rows=25 loops=1)
   Index Cond: (operations_feature_flags.project_id = 2670515)
   Filter: (operations_feature_flags.version = 2)
   Rows Removed by Filter: 0
   Buffers: shared hit=3 read=21 dirtied=6
   I/O Timings: read=21.123 write=0.000
Time: 23.909 ms
  - planning: 1.177 ms
  - execution: 22.732 ms
    - I/O read: 21.123 ms
    - I/O write: 0.000 ms

Shared buffers:
  - hits: 3 (~24.00 KiB) from the buffer pool
  - reads: 21 (~168.00 KiB) from the OS file cache, including disk I/O
  - dirtied: 6 (~48.00 KiB)
  - writes: 0

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

For #254324 (closed)

Edited by Michał Zając

Merge request reports