Add a new table issue_index to store the max issue index so that issue could be deleted with no duplicated index (#15599)

* Add a new table issue_index to store the max issue index so that issue could be deleted with no duplicated index

* Fix pull index

* Add tests for concurrent creating issues

* Fix lint

* Fix tests

* Fix postgres test

* Add test for migration v180

* Rename wrong test file name

Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: Lauris BH <lauris@nix.lv>
This commit is contained in:
2021-06-14 10:22:55 +08:00
committed by GitHub
parent a005265718
commit 0393a57511
14 changed files with 354 additions and 82 deletions

View File

@ -1510,6 +1510,11 @@ func DeleteRepository(doer *User, uid, repoID int64) error {
return err
}
// Delete issue index
if err := deleteResouceIndex(sess, "issue_index", repoID); err != nil {
return err
}
if repo.IsFork {
if _, err := sess.Exec("UPDATE `repository` SET num_forks=num_forks-1 WHERE id=?", repo.ForkID); err != nil {
return fmt.Errorf("decrease fork count: %v", err)