Commit de724a7a34a501234000a539e9ba6ce16857ad5d
1 parent
c983e8eb
Exists in
spb-stable
and in
3 other branches
Improve db schema for merge request diffs
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Showing
3 changed files
with
21 additions
and
10 deletions
Show diff stats
db/migrate/20140122112253_create_merge_request_diffs.rb
1 | class CreateMergeRequestDiffs < ActiveRecord::Migration | 1 | class CreateMergeRequestDiffs < ActiveRecord::Migration |
2 | def change | 2 | def change |
3 | create_table :merge_request_diffs do |t| | 3 | create_table :merge_request_diffs do |t| |
4 | - t.string :state, null: false, default: 'valid' | 4 | + t.string :state, null: false, default: 'collected' |
5 | t.text :st_commits, null: true, limit: 2147483647 | 5 | t.text :st_commits, null: true, limit: 2147483647 |
6 | t.text :st_diffs, null: true, limit: 2147483647 | 6 | t.text :st_diffs, null: true, limit: 2147483647 |
7 | t.integer :merge_request_id, null: false | 7 | t.integer :merge_request_id, null: false |
@@ -0,0 +1,13 @@ | @@ -0,0 +1,13 @@ | ||
1 | +class RemoveMRdiffFields < ActiveRecord::Migration | ||
2 | + def up | ||
3 | + remove_column :merge_requests, :st_commits | ||
4 | + remove_column :merge_requests, :st_diffs | ||
5 | + end | ||
6 | + | ||
7 | + def down | ||
8 | + add_column :merge_requests, :st_commits, :text, null: true, limit: 2147483647 | ||
9 | + add_column :merge_requests, :st_diffs, :text, null: true, limit: 2147483647 | ||
10 | + execute "UPDATE merge_requests mr, merge_request_diffs md SET mr.st_commits = md.st_commits WHERE md.merge_request_id = mr.id" | ||
11 | + execute "UPDATE merge_requests mr, merge_request_diffs md SET mr.st_diffs = md.st_diffs WHERE md.merge_request_id = mr.id" | ||
12 | + end | ||
13 | +end |
db/schema.rb
@@ -11,7 +11,7 @@ | @@ -11,7 +11,7 @@ | ||
11 | # | 11 | # |
12 | # It's strongly recommended that you check this file into your version control system. | 12 | # It's strongly recommended that you check this file into your version control system. |
13 | 13 | ||
14 | -ActiveRecord::Schema.define(version: 20140122114406) do | 14 | +ActiveRecord::Schema.define(version: 20140122122549) do |
15 | 15 | ||
16 | create_table "broadcast_messages", force: true do |t| | 16 | create_table "broadcast_messages", force: true do |t| |
17 | t.text "message", null: false | 17 | t.text "message", null: false |
@@ -96,29 +96,27 @@ ActiveRecord::Schema.define(version: 20140122114406) do | @@ -96,29 +96,27 @@ ActiveRecord::Schema.define(version: 20140122114406) do | ||
96 | add_index "keys", ["user_id"], name: "index_keys_on_user_id", using: :btree | 96 | add_index "keys", ["user_id"], name: "index_keys_on_user_id", using: :btree |
97 | 97 | ||
98 | create_table "merge_request_diffs", force: true do |t| | 98 | create_table "merge_request_diffs", force: true do |t| |
99 | - t.string "state", default: "valid", null: false | 99 | + t.string "state", default: "collected", null: false |
100 | t.text "st_commits", limit: 2147483647 | 100 | t.text "st_commits", limit: 2147483647 |
101 | t.text "st_diffs", limit: 2147483647 | 101 | t.text "st_diffs", limit: 2147483647 |
102 | - t.integer "merge_request_id", null: false | 102 | + t.integer "merge_request_id", null: false |
103 | t.datetime "created_at" | 103 | t.datetime "created_at" |
104 | t.datetime "updated_at" | 104 | t.datetime "updated_at" |
105 | end | 105 | end |
106 | 106 | ||
107 | create_table "merge_requests", force: true do |t| | 107 | create_table "merge_requests", force: true do |t| |
108 | - t.string "target_branch", null: false | ||
109 | - t.string "source_branch", null: false | ||
110 | - t.integer "source_project_id", null: false | 108 | + t.string "target_branch", null: false |
109 | + t.string "source_branch", null: false | ||
110 | + t.integer "source_project_id", null: false | ||
111 | t.integer "author_id" | 111 | t.integer "author_id" |
112 | t.integer "assignee_id" | 112 | t.integer "assignee_id" |
113 | t.string "title" | 113 | t.string "title" |
114 | t.datetime "created_at" | 114 | t.datetime "created_at" |
115 | t.datetime "updated_at" | 115 | t.datetime "updated_at" |
116 | - t.text "st_commits", limit: 2147483647 | ||
117 | - t.text "st_diffs", limit: 2147483647 | ||
118 | t.integer "milestone_id" | 116 | t.integer "milestone_id" |
119 | t.string "state" | 117 | t.string "state" |
120 | t.string "merge_status" | 118 | t.string "merge_status" |
121 | - t.integer "target_project_id", null: false | 119 | + t.integer "target_project_id", null: false |
122 | t.integer "iid" | 120 | t.integer "iid" |
123 | t.text "description" | 121 | t.text "description" |
124 | end | 122 | end |