Remove unnecessary updates to issue indexer (#3212)
This commit is contained in:
parent
eb2b4df0ed
commit
6abfa48c0e
3 changed files with 22 additions and 2 deletions
|
@ -582,7 +582,7 @@ func updateIssueCols(e Engine, issue *Issue, cols ...string) error {
|
|||
if _, err := e.ID(issue.ID).Cols(cols...).Update(issue); err != nil {
|
||||
return err
|
||||
}
|
||||
UpdateIssueIndexer(issue.ID)
|
||||
UpdateIssueIndexerCols(issue.ID, cols...)
|
||||
return nil
|
||||
}
|
||||
|
||||
|
|
|
@ -102,6 +102,26 @@ func (issue *Issue) update() indexer.IssueIndexerUpdate {
|
|||
}
|
||||
}
|
||||
|
||||
// updateNeededCols whether a change to the specified columns requires updating
|
||||
// the issue indexer
|
||||
func updateNeededCols(cols []string) bool {
|
||||
for _, col := range cols {
|
||||
switch col {
|
||||
case "name", "content":
|
||||
return true
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
// UpdateIssueIndexerCols update an issue in the issue indexer, given changes
|
||||
// to the specified columns
|
||||
func UpdateIssueIndexerCols(issueID int64, cols ...string) {
|
||||
if updateNeededCols(cols) {
|
||||
UpdateIssueIndexer(issueID)
|
||||
}
|
||||
}
|
||||
|
||||
// UpdateIssueIndexer add/update an issue to the issue indexer
|
||||
func UpdateIssueIndexer(issueID int64) {
|
||||
select {
|
||||
|
|
|
@ -282,7 +282,7 @@ func changeMilestoneAssign(e *xorm.Session, doer *User, issue *Issue, oldMilesto
|
|||
}
|
||||
}
|
||||
|
||||
return updateIssue(e, issue)
|
||||
return updateIssueCols(e, issue, "milestone_id")
|
||||
}
|
||||
|
||||
// ChangeMilestoneAssign changes assignment of milestone for issue.
|
||||
|
|
Reference in a new issue