From eb8c871a529bb06f063477e423b9d7ef1061e6e2 Mon Sep 17 00:00:00 2001 From: Guillermo Prandi Date: Tue, 22 Oct 2019 14:37:33 -0300 Subject: [PATCH 1/4] Fix extra fields from database --- models/issue_label.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/models/issue_label.go b/models/issue_label.go index 2b77c4bc35a11..9efc7fd51f4d4 100644 --- a/models/issue_label.go +++ b/models/issue_label.go @@ -68,10 +68,10 @@ type Label struct { Color string `xorm:"VARCHAR(7)"` NumIssues int NumClosedIssues int - NumOpenIssues int `xorm:"-"` - IsChecked bool `xorm:"-"` - QueryString string - IsSelected bool + NumOpenIssues int `xorm:"-"` + IsChecked bool `xorm:"-"` + QueryString string `xorm:"-"` + IsSelected bool `xorm:"-"` } // APIFormat converts a Label to the api.Label format From e07d21fa0a540fa0c7088b9a96129970f16186ea Mon Sep 17 00:00:00 2001 From: Guillermo Prandi Date: Tue, 22 Oct 2019 18:38:26 -0300 Subject: [PATCH 2/4] Add migration to drop unneeded columns --- models/migrations/migrations.go | 2 ++ models/migrations/v104.go | 27 +++++++++++++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 models/migrations/v104.go diff --git a/models/migrations/migrations.go b/models/migrations/migrations.go index 8b1329ea68a7f..e214f16a2a1e1 100644 --- a/models/migrations/migrations.go +++ b/models/migrations/migrations.go @@ -262,6 +262,8 @@ var migrations = []Migration{ NewMigration("update migration repositories' service type", dropColumnHeadUserNameOnPullRequest), // v103 -> v104 NewMigration("Add WhitelistDeployKeys to protected branch", addWhitelistDeployKeysToBranches), + // v104 -> v105 + NewMigration("remove unnecessary columns from label", removeLabelUneededCols), } // Migrate database to current version diff --git a/models/migrations/v104.go b/models/migrations/v104.go new file mode 100644 index 0000000000000..362939d0b4fd5 --- /dev/null +++ b/models/migrations/v104.go @@ -0,0 +1,27 @@ +// Copyright 2019 The Gitea Authors. All rights reserved. +// Use of this source code is governed by a MIT-style +// license that can be found in the LICENSE file. + +package migrations + +import ( + "xorm.io/xorm" +) + +func removeLabelUneededCols(x *xorm.Engine) error { + sess := x.NewSession() + defer sess.Close() + if err := sess.Begin(); err != nil { + return err + } + if err := dropTableColumns(sess, "label", "query_string"); err != nil { + return err + } + if err := dropTableColumns(sess, "label", "is_selected"); err != nil { + return err + } + if err := sess.Commit(); err != nil { + return err + } + return nil +} From bb4a5998d6bf4dc96b568ecf0ad60e97c4e25c92 Mon Sep 17 00:00:00 2001 From: Guillermo Prandi Date: Tue, 22 Oct 2019 22:35:55 -0300 Subject: [PATCH 3/4] Fix lint --- models/migrations/v104.go | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/models/migrations/v104.go b/models/migrations/v104.go index 362939d0b4fd5..3fcef9ebfc105 100644 --- a/models/migrations/v104.go +++ b/models/migrations/v104.go @@ -20,8 +20,5 @@ func removeLabelUneededCols(x *xorm.Engine) error { if err := dropTableColumns(sess, "label", "is_selected"); err != nil { return err } - if err := sess.Commit(); err != nil { - return err - } - return nil + return sess.Commit() } From 0ed6f557a184855a74ee58ecb9b736996a035f33 Mon Sep 17 00:00:00 2001 From: Guillermo Prandi Date: Wed, 23 Oct 2019 04:09:38 -0300 Subject: [PATCH 4/4] Make sure the columns exist --- models/migrations/v104.go | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/models/migrations/v104.go b/models/migrations/v104.go index 3fcef9ebfc105..f3ec3c88c825b 100644 --- a/models/migrations/v104.go +++ b/models/migrations/v104.go @@ -9,6 +9,16 @@ import ( ) func removeLabelUneededCols(x *xorm.Engine) error { + + // Make sure the columns exist before dropping them + type Label struct { + QueryString string + IsSelected bool + } + if err := x.Sync2(new(Label)); err != nil { + return err + } + sess := x.NewSession() defer sess.Close() if err := sess.Begin(); err != nil {