1
0
Fork 0

Fixes 500 error on dashboard when using MSSQL (#2504)

MSSQL rejects the query:
  SELECT "repository"."id" FROM "repository"
  INNER JOIN "team_repo" ON "team_repo".repo_id="repository".id AND
  "repository".is_mirror=1
  WHERE (
    ("repository".owner_id=2 AND "repository".is_private=0)
        OR team_repo.team_id IN (1)
        )
        GROUP BY "repository".id ORDER BY updated_unix DESC

when the order by term (updated_unix) is not included in the group by
term.
This commit is contained in:
bradder555 2017-09-15 14:14:06 +08:00 committed by Lauris BH
parent 0f9e20b3d7
commit ad24a3134d

View file

@ -680,7 +680,7 @@ func (env *accessibleReposEnv) MirrorRepoIDs() ([]int64, error) {
Table("repository"). Table("repository").
Join("INNER", "team_repo", "`team_repo`.repo_id=`repository`.id AND `repository`.is_mirror=?", true). Join("INNER", "team_repo", "`team_repo`.repo_id=`repository`.id AND `repository`.is_mirror=?", true).
Where(env.cond()). Where(env.cond()).
GroupBy("`repository`.id"). GroupBy("`repository`.id, `repository`.updated_unix").
OrderBy("updated_unix DESC"). OrderBy("updated_unix DESC").
Cols("`repository`.id"). Cols("`repository`.id").
Find(&repoIDs) Find(&repoIDs)