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
This commit is contained in:
parent
1d8b521ae1
commit
821184c203
1 changed files with 10 additions and 0 deletions
|
@ -33,9 +33,19 @@ func renameRepoIsBareToIsEmpty(x *xorm.Engine) error {
|
||||||
_, err = sess.Exec("DROP INDEX IF EXISTS IDX_repository_is_bare")
|
_, err = sess.Exec("DROP INDEX IF EXISTS IDX_repository_is_bare")
|
||||||
} else if models.DbCfg.Type == core.MSSQL {
|
} else if models.DbCfg.Type == core.MSSQL {
|
||||||
_, err = sess.Exec("DROP INDEX IF EXISTS IDX_repository_is_bare ON repository")
|
_, err = sess.Exec("DROP INDEX IF EXISTS IDX_repository_is_bare ON repository")
|
||||||
|
} else if models.DbCfg.Type == core.MYSQL {
|
||||||
|
indexes, err := sess.QueryString(`SHOW INDEX FROM repository WHERE KEY_NAME = 'IDX_repository_is_bare'`)
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
if len(indexes) >= 1 {
|
||||||
|
_, err = sess.Exec("DROP INDEX IDX_repository_is_bare ON repository")
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
_, err = sess.Exec("DROP INDEX IDX_repository_is_bare ON repository")
|
_, err = sess.Exec("DROP INDEX IDX_repository_is_bare ON repository")
|
||||||
}
|
}
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("Drop index failed: %v", err)
|
return fmt.Errorf("Drop index failed: %v", err)
|
||||||
}
|
}
|
||||||
|
|
Reference in a new issue