summaryrefslogtreecommitdiff
path: root/db/migrate
diff options
context:
space:
mode:
authoryguo <yguo@gitlab.com>2019-06-10 09:44:55 -0400
committeryguo <yguo@gitlab.com>2019-06-13 10:51:32 -0400
commit73b67346760ecaddfbd2a3da8d852a722a0efa56 (patch)
treed09944b4e8e22ceeeb63d5782319a728a86bf9b3 /db/migrate
parent0a70ba177e4589733659dd5af85402d0a3081026 (diff)
downloadgitlab-ce-73b67346760ecaddfbd2a3da8d852a722a0efa56.tar.gz
Add index on public_emails for users table
Clean up issue-62684 Update issue-62684 changelog Update down migrate for issue-62684
Diffstat (limited to 'db/migrate')
-rw-r--r--db/migrate/20190607190856_add_index_to_users_public_emails.rb23
1 files changed, 23 insertions, 0 deletions
diff --git a/db/migrate/20190607190856_add_index_to_users_public_emails.rb b/db/migrate/20190607190856_add_index_to_users_public_emails.rb
new file mode 100644
index 00000000000..81ec38b8b32
--- /dev/null
+++ b/db/migrate/20190607190856_add_index_to_users_public_emails.rb
@@ -0,0 +1,23 @@
+# frozen_string_literal: true
+
+# See http://doc.gitlab.com/ce/development/migration_style_guide.html
+# for more information on how to write migrations for GitLab.
+
+class AddIndexToUsersPublicEmails < ActiveRecord::Migration[5.1]
+ include Gitlab::Database::MigrationHelpers
+
+ # Set this constant to true if this migration requires downtime.
+ DOWNTIME = false
+
+ disable_ddl_transaction!
+
+ def up
+ add_concurrent_index :users, [:public_email],
+ where: "public_email != ''"
+ end
+
+ def down
+ remove_concurrent_index :users, [:public_email],
+ where: "public_email != ''"
+ end
+end