gitea源码

123456789101112131415161718192021222324252627282930313233
  1. // Copyright 2018 The Gitea Authors. All rights reserved.
  2. // SPDX-License-Identifier: MIT
  3. package v1_7
  4. import (
  5. "xorm.io/builder"
  6. "xorm.io/xorm"
  7. )
  8. func ClearNonusedData(x *xorm.Engine) error {
  9. condDelete := func(colName string) builder.Cond {
  10. return builder.NotIn(colName, builder.Select("id").From("`user`"))
  11. }
  12. if _, err := x.Exec(builder.Delete(condDelete("uid")).From("team_user")); err != nil {
  13. return err
  14. }
  15. if _, err := x.Exec(builder.Delete(condDelete("user_id")).From("collaboration")); err != nil {
  16. return err
  17. }
  18. if _, err := x.Exec(builder.Delete(condDelete("user_id")).From("stopwatch")); err != nil {
  19. return err
  20. }
  21. if _, err := x.Exec(builder.Delete(condDelete("owner_id")).From("gpg_key")); err != nil {
  22. return err
  23. }
  24. return nil
  25. }