From 69fbb9d3f90f5f40746e9ca50d7d6b7177f23a7a Mon Sep 17 00:00:00 2001 From: Gary Holtz <gholtz@gitlab.com> Date: Thu, 16 Nov 2023 04:17:28 +0000 Subject: [PATCH] Add a temporary transitionable flag to speed up validations Changelog: performance --- app/models/concerns/transitionable.rb | 4 +--- .../skip_validations_during_transitions.yml | 8 -------- spec/models/concerns/transitionable_spec.rb | 17 +++++++---------- spec/models/merge_request_spec.rb | 2 +- 4 files changed, 9 insertions(+), 22 deletions(-) delete mode 100644 config/feature_flags/development/skip_validations_during_transitions.yml diff --git a/app/models/concerns/transitionable.rb b/app/models/concerns/transitionable.rb index 70e1fc8b78a9b..b64b09336bb4f 100644 --- a/app/models/concerns/transitionable.rb +++ b/app/models/concerns/transitionable.rb @@ -6,9 +6,7 @@ module Transitionable attr_accessor :transitioning def transitioning? - return false unless transitioning && Feature.enabled?(:skip_validations_during_transitions, project) - - true + transitioning end def enable_transitioning diff --git a/config/feature_flags/development/skip_validations_during_transitions.yml b/config/feature_flags/development/skip_validations_during_transitions.yml deleted file mode 100644 index 53cf5f5ee719c..0000000000000 --- a/config/feature_flags/development/skip_validations_during_transitions.yml +++ /dev/null @@ -1,8 +0,0 @@ ---- -name: skip_validations_during_transitions -introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/129848 -rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/423092 -milestone: '16.4' -type: development -group: group::code review -default_enabled: false diff --git a/spec/models/concerns/transitionable_spec.rb b/spec/models/concerns/transitionable_spec.rb index b80d363ef7897..c8cba1ae22667 100644 --- a/spec/models/concerns/transitionable_spec.rb +++ b/spec/models/concerns/transitionable_spec.rb @@ -22,19 +22,16 @@ def project let(:object) { klass.new(transitioning) } describe '#transitioning?' do - where(:transitioning, :feature_flag, :result) do - true | true | true - false | false | false - true | false | false - false | true | false + context "when trasnitioning" do + let(:transitioning) { true } + + it { expect(object.transitioning?).to eq(true) } end - with_them do - before do - stub_feature_flags(skip_validations_during_transitions: feature_flag) - end + context "when not trasnitioning" do + let(:transitioning) { false } - it { expect(object.transitioning?).to eq(result) } + it { expect(object.transitioning?).to eq(false) } end end end diff --git a/spec/models/merge_request_spec.rb b/spec/models/merge_request_spec.rb index d3c32da284232..174badfb05ffc 100644 --- a/spec/models/merge_request_spec.rb +++ b/spec/models/merge_request_spec.rb @@ -404,7 +404,7 @@ end end - context "with the skip_validations_during_transition_feature_flag" do + context "when transitioning between states" do let(:merge_request) { build(:merge_request, transitioning: transitioning) } where(:transitioning, :to_or_not_to) do -- GitLab