Add latest changes from gitlab-org/gitlab@master
This commit is contained in:
parent
b96e93e10e
commit
c4e03a0f96
|
@ -132,6 +132,14 @@
|
||||||
- "config/webpack.config.js"
|
- "config/webpack.config.js"
|
||||||
- "config/helpers/*.js"
|
- "config/helpers/*.js"
|
||||||
|
|
||||||
|
.frontend-build-patterns: &frontend-build-patterns
|
||||||
|
- "{package.json,yarn.lock}"
|
||||||
|
- "babel.config.js"
|
||||||
|
- "config/webpack.config.js"
|
||||||
|
- "config/**/*.js"
|
||||||
|
- "vendor/assets/**/*"
|
||||||
|
- "{,ee/}app/assets/**/*"
|
||||||
|
|
||||||
.frontend-patterns: &frontend-patterns
|
.frontend-patterns: &frontend-patterns
|
||||||
- "{package.json,yarn.lock}"
|
- "{package.json,yarn.lock}"
|
||||||
- "babel.config.js"
|
- "babel.config.js"
|
||||||
|
@ -467,7 +475,7 @@
|
||||||
- <<: *if-not-canonical-namespace
|
- <<: *if-not-canonical-namespace
|
||||||
when: never
|
when: never
|
||||||
- if: '$DANGER_GITLAB_API_TOKEN && $CI_MERGE_REQUEST_IID && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == $CI_DEFAULT_BRANCH'
|
- if: '$DANGER_GITLAB_API_TOKEN && $CI_MERGE_REQUEST_IID && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == $CI_DEFAULT_BRANCH'
|
||||||
changes: *frontend-patterns
|
changes: *frontend-build-patterns
|
||||||
allow_failure: true
|
allow_failure: true
|
||||||
|
|
||||||
################
|
################
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
---
|
||||||
|
title: Add partial index on members to optimize highest access level query
|
||||||
|
merge_request: 59455
|
||||||
|
author:
|
||||||
|
type: performance
|
|
@ -0,0 +1,17 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
class IndexMembersOnUserIdAccessLevelRequestedAtIsNull < ActiveRecord::Migration[6.0]
|
||||||
|
include Gitlab::Database::MigrationHelpers
|
||||||
|
|
||||||
|
disable_ddl_transaction!
|
||||||
|
|
||||||
|
INDEX_NAME = 'index_members_on_user_id_and_access_level_requested_at_is_null'
|
||||||
|
|
||||||
|
def up
|
||||||
|
add_concurrent_index(:members, [:user_id, :access_level], where: 'requested_at IS NULL', name: INDEX_NAME)
|
||||||
|
end
|
||||||
|
|
||||||
|
def down
|
||||||
|
remove_concurrent_index_by_name(:members, INDEX_NAME)
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1 @@
|
||||||
|
393a7f1029f05f73c26e031c8980734e13c304846c3457d581c006dc2566d94d
|
|
@ -23035,6 +23035,8 @@ CREATE INDEX index_members_on_requested_at ON members USING btree (requested_at)
|
||||||
|
|
||||||
CREATE INDEX index_members_on_source_id_and_source_type ON members USING btree (source_id, source_type);
|
CREATE INDEX index_members_on_source_id_and_source_type ON members USING btree (source_id, source_type);
|
||||||
|
|
||||||
|
CREATE INDEX index_members_on_user_id_and_access_level_requested_at_is_null ON members USING btree (user_id, access_level) WHERE (requested_at IS NULL);
|
||||||
|
|
||||||
CREATE INDEX index_members_on_user_id_created_at ON members USING btree (user_id, created_at) WHERE ((ldap = true) AND ((type)::text = 'GroupMember'::text) AND ((source_type)::text = 'Namespace'::text));
|
CREATE INDEX index_members_on_user_id_created_at ON members USING btree (user_id, created_at) WHERE ((ldap = true) AND ((type)::text = 'GroupMember'::text) AND ((source_type)::text = 'Namespace'::text));
|
||||||
|
|
||||||
CREATE INDEX index_members_on_user_id_source_id_source_type ON members USING btree (user_id, source_id, source_type);
|
CREATE INDEX index_members_on_user_id_source_id_source_type ON members USING btree (user_id, source_id, source_type);
|
||||||
|
|
|
@ -39,6 +39,7 @@ module QA
|
||||||
needs: [test_blocked_pipeline]
|
needs: [test_blocked_pipeline]
|
||||||
script: echo do not click me
|
script: echo do not click me
|
||||||
when: manual
|
when: manual
|
||||||
|
allow_failure: false
|
||||||
|
|
||||||
dummy_job:
|
dummy_job:
|
||||||
stage: deploy
|
stage: deploy
|
||||||
|
@ -71,8 +72,9 @@ module QA
|
||||||
|
|
||||||
it 'can still merge MR successfully', testcase: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/971' do
|
it 'can still merge MR successfully', testcase: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/971' do
|
||||||
Page::MergeRequest::Show.perform do |show|
|
Page::MergeRequest::Show.perform do |show|
|
||||||
show.wait_until(reload: false) { show.has_pipeline_status?('running') }
|
# waiting for manual action status shows status badge 'blocked' on pipelines page
|
||||||
show.merge_immediately!
|
show.wait_until(reload: false) { show.has_pipeline_status?('waiting for manual action') }
|
||||||
|
show.merge!
|
||||||
|
|
||||||
expect(show).to be_merged
|
expect(show).to be_merged
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue