diff options
author | zeripath <art27@cantab.net> | 2019-05-05 19:58:49 +0100 |
---|---|---|
committer | techknowlogick <hello@techknowlogick.com> | 2019-05-05 14:58:49 -0400 |
commit | d1a32fa1082d7ebf7b2f8099764ca6393abc4af3 (patch) | |
tree | 7f649c854f351161a6dd2250d1765c130d131fca /models/migrations | |
parent | a2a006a5d5a542c5c31bdce4647d2401eab88475 (diff) | |
download | gitea-d1a32fa1082d7ebf7b2f8099764ca6393abc4af3.tar.gz gitea-d1a32fa1082d7ebf7b2f8099764ca6393abc4af3.zip |
Attempt to fix #6707 (#6823)
Diffstat (limited to 'models/migrations')
-rw-r--r-- | models/migrations/v78.go | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/models/migrations/v78.go b/models/migrations/v78.go index b0c7bfb6e3..7ca112dbd5 100644 --- a/models/migrations/v78.go +++ b/models/migrations/v78.go @@ -32,7 +32,14 @@ func renameRepoIsBareToIsEmpty(x *xorm.Engine) error { if models.DbCfg.Type == core.POSTGRES || models.DbCfg.Type == core.SQLITE { _, err = sess.Exec("DROP INDEX IF EXISTS IDX_repository_is_bare") } else if models.DbCfg.Type == core.MSSQL { - _, err = sess.Exec("DROP INDEX IF EXISTS IDX_repository_is_bare ON repository") + _, err = sess.Exec(`DECLARE @ConstraintName VARCHAR(256) + DECLARE @SQL NVARCHAR(256) + SELECT @ConstraintName = obj.name FROM sys.columns col LEFT OUTER JOIN sys.objects obj ON obj.object_id = col.default_object_id AND obj.type = 'D' WHERE col.object_id = OBJECT_ID('repository') AND obj.name IS NOT NULL AND col.name = 'is_bare' + SET @SQL = N'ALTER TABLE [repository] DROP CONSTRAINT [' + @ConstraintName + N']' + EXEC sp_executesql @SQL`) + if err != nil { + return err + } } 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 { |