add index on notification settings columns expected to have be distributed unevenly

pull/9557/head
ulferts 3 years ago
parent 8cfb94be7d
commit aabe286e4b
No known key found for this signature in database
GPG Key ID: A205708DE1284017
  1. 15
      db/migrate/20210802114054_add_notification_setting_options.rb

@ -2,16 +2,19 @@ class AddNotificationSettingOptions < ActiveRecord::Migration[6.1]
def change
add_notification_settings_options
update_notified_events
# TODO: add index to all boolean fields
end
def add_notification_settings_options
change_table :notification_settings, bulk: true do |t|
t.boolean :work_package_commented, default: false
t.boolean :work_package_created, default: false
t.boolean :work_package_processed, default: false
t.boolean :work_package_prioritized, default: false
# Adding indices here is probably useful as most of those are expected to be false
# and we are searching for those that are true.
# The columns watched, involved and mentioned will probably be true most of the time
# so having an index there should not improve speed.
t.boolean :work_package_commented, default: false, index: true
t.boolean :work_package_created, default: false, index: true
t.boolean :work_package_processed, default: false, index: true
t.boolean :work_package_prioritized, default: false, index: true
t.index :all
end
end

Loading…
Cancel
Save