Migration for deleting orphaned dependencies (#10617)

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
release/v1.15
Antoine GIRARD 2020-03-05 16:54:50 +01:00 committed by GitHub
parent 10081f88ed
commit ae452d024e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 20 additions and 0 deletions

View File

@ -190,6 +190,8 @@ var migrations = []Migration{
NewMigration("add repository code language statistics", addLanguageStats),
// v128 -> v129
NewMigration("fix merge base for pull requests", fixMergeBase),
// v129 -> v130
NewMigration("remove dependencies from deleted repositories", purgeUnusedDependencies),
}
// Migrate database to current version

18
models/migrations/v129.go Normal file
View File

@ -0,0 +1,18 @@
// Copyright 2020 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 purgeUnusedDependencies(x *xorm.Engine) error {
if _, err := x.Exec("DELETE FROM issue_dependency WHERE issue_id NOT IN (SELECT id FROM issue)"); err != nil {
return err
}
_, err := x.Exec("DELETE FROM issue_dependency WHERE dependency_id NOT IN (SELECT id FROM issue)")
return err
}