Adds event enum column to DesignsVersions join table

Also adds index to support scopes and queries

This supports https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/14656
This commit is contained in:
Alex Kalderimis 2019-07-15 10:29:21 -04:00
parent 6dcde68b6d
commit 3f9aa7dae2
3 changed files with 33 additions and 0 deletions

View File

@ -0,0 +1,4 @@
---
title: Adds event enum column to DesignsVersions join table
merge_request: 30745
type: added

View File

@ -0,0 +1,27 @@
# frozen_string_literal: true
# This migration sets up a event enum on the DesignsVersions join table
class AddEventTypeToDesignManagementDesignsVersions < ActiveRecord::Migration[5.2]
include Gitlab::Database::MigrationHelpers
# Set this constant to true if this migration requires downtime.
DOWNTIME = false
# We disable these cops here because adding this column is safe. The table does not
# have any data in it.
# rubocop: disable Migration/AddIndex
# rubocop: disable Migration/AddColumn
def up
add_column(:design_management_designs_versions, :event, :integer,
limit: 2,
null: false,
default: 0)
add_index(:design_management_designs_versions, :event)
end
# rubocop: disable Migration/RemoveIndex
def down
remove_index(:design_management_designs_versions, :event)
remove_column(:design_management_designs_versions, :event)
end
end

View File

@ -1097,8 +1097,10 @@ ActiveRecord::Schema.define(version: 2019_07_15_142138) do
create_table "design_management_designs_versions", id: false, force: :cascade do |t|
t.bigint "design_id", null: false
t.bigint "version_id", null: false
t.integer "event", limit: 2, default: 0, null: false
t.index ["design_id", "version_id"], name: "design_management_designs_versions_uniqueness", unique: true
t.index ["design_id"], name: "index_design_management_designs_versions_on_design_id"
t.index ["event"], name: "index_design_management_designs_versions_on_event"
t.index ["version_id"], name: "index_design_management_designs_versions_on_version_id"
end