Skip to content
Snippets Groups Projects

Validate uniqnuess of member role name

Merged Jarka Košanová requested to merge 438472-validate-cr-name-uniqness into master
1 unresolved thread
3 files
+ 20
9
Compare changes
  • Side-by-side
  • Inline
Files
3
@@ -4,18 +4,18 @@ class AddNameUniqueIndexToMemberRoles < Gitlab::Database::Migration[2.2]
@@ -4,18 +4,18 @@ class AddNameUniqueIndexToMemberRoles < Gitlab::Database::Migration[2.2]
disable_ddl_transaction!
disable_ddl_transaction!
milestone '16.10'
milestone '16.10'
OLD_INDEX_NAME = 'index_member_roles_on_namespace_id'
INDEX_WITH_NAMESPACE_NAME = 'index_member_roles_on_namespace_id_name_unique'
INDEX_NAME = 'index_member_roles_on_namespace_id_name_unique'
INDEX_NO_NAMESPACE_NAME = 'index_member_roles_on_name_unique'
def up
def up
remove_concurrent_index_by_name :member_roles, OLD_INDEX_NAME
add_concurrent_index :member_roles, [:namespace_id, :name], name: INDEX_WITH_NAMESPACE_NAME,
unique: true, where: 'namespace_id IS NOT NULL'
add_concurrent_index :member_roles, [:namespace_id, :name], name: INDEX_NAME, unique: true
add_concurrent_index :member_roles, [:name], name: INDEX_NO_NAMESPACE_NAME,
 
unique: true, where: 'namespace_id IS NULL'
end
end
def down
def down
remove_concurrent_index_by_name :member_roles, INDEX_NAME
remove_concurrent_index_by_name :member_roles, INDEX_WITH_NAMESPACE_NAME
remove_concurrent_index_by_name :member_roles, INDEX_NO_NAMESPACE_NAME
add_concurrent_index :member_roles, [:namespace_id], name: OLD_INDEX_NAME
end
end
end
end
Loading