Skip to content

Commit 821184c

Browse files
adelowolafriks
authored andcommitted
Drop is_bare IDX only when it exists for MySQL and MariaDB (#6736)
* Drop is_bare IDX only when it exists * show indexes only on mysql or mariadb
1 parent 1d8b521 commit 821184c

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

models/migrations/v78.go

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,19 @@ func renameRepoIsBareToIsEmpty(x *xorm.Engine) error {
3333
_, err = sess.Exec("DROP INDEX IF EXISTS IDX_repository_is_bare")
3434
} else if models.DbCfg.Type == core.MSSQL {
3535
_, err = sess.Exec("DROP INDEX IF EXISTS IDX_repository_is_bare ON repository")
36+
} else if models.DbCfg.Type == core.MYSQL {
37+
indexes, err := sess.QueryString(`SHOW INDEX FROM repository WHERE KEY_NAME = 'IDX_repository_is_bare'`)
38+
if err != nil {
39+
return err
40+
}
41+
42+
if len(indexes) >= 1 {
43+
_, err = sess.Exec("DROP INDEX IDX_repository_is_bare ON repository")
44+
}
3645
} else {
3746
_, err = sess.Exec("DROP INDEX IDX_repository_is_bare ON repository")
3847
}
48+
3949
if err != nil {
4050
return fmt.Errorf("Drop index failed: %v", err)
4151
}

0 commit comments

Comments
 (0)