Skip to content

Commit d745780

Browse files
Gustedwxiaoguang
Gusted
andauthored
Add Num{Issues,Pulls} stats checks (#21404) (#21414)
Backport #21404 Currently `repository.Num{Issues,Pulls}` weren't checked and could become out-of-consistency. Adds these two checks to `CheckRepoStats`. Fix incorrect SQL query for `repository.NumClosedPulls`, the check should be for `repo_num_pulls`. Co-authored-by: wxiaoguang <[email protected]>
1 parent 652abf0 commit d745780

File tree

1 file changed

+13
-1
lines changed

1 file changed

+13
-1
lines changed

models/repo.go

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -605,15 +605,27 @@ func CheckRepoStats(ctx context.Context) error {
605605
repoStatsCorrectNumStars,
606606
"repository count 'num_stars'",
607607
},
608+
// Repository.NumIssues
609+
{
610+
statsQuery("SELECT repo.id FROM `repository` repo WHERE repo.num_issues!=(SELECT COUNT(*) FROM `issue` WHERE repo_id=repo.id AND is_closed=? AND is_pull=?)", false, false),
611+
repoStatsCorrectNumIssues,
612+
"repository count 'num_issues'",
613+
},
608614
// Repository.NumClosedIssues
609615
{
610616
statsQuery("SELECT repo.id FROM `repository` repo WHERE repo.num_closed_issues!=(SELECT COUNT(*) FROM `issue` WHERE repo_id=repo.id AND is_closed=? AND is_pull=?)", true, false),
611617
repoStatsCorrectNumClosedIssues,
612618
"repository count 'num_closed_issues'",
613619
},
620+
// Repository.NumPulls
621+
{
622+
statsQuery("SELECT repo.id FROM `repository` repo WHERE repo.num_pulls!=(SELECT COUNT(*) FROM `issue` WHERE repo_id=repo.id AND is_closed=? AND is_pull=?)", false, true),
623+
repoStatsCorrectNumPulls,
624+
"repository count 'num_pulls'",
625+
},
614626
// Repository.NumClosedPulls
615627
{
616-
statsQuery("SELECT repo.id FROM `repository` repo WHERE repo.num_closed_issues!=(SELECT COUNT(*) FROM `issue` WHERE repo_id=repo.id AND is_closed=? AND is_pull=?)", true, true),
628+
statsQuery("SELECT repo.id FROM `repository` repo WHERE repo.num_closed_pulls!=(SELECT COUNT(*) FROM `issue` WHERE repo_id=repo.id AND is_closed=? AND is_pull=?)", true, true),
617629
repoStatsCorrectNumClosedPulls,
618630
"repository count 'num_closed_pulls'",
619631
},

0 commit comments

Comments
 (0)