Mercurial > gemma
changeset 5109:c0ceec7e6f85 queued-stage-done
Define constants for review jobs.
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Wed, 25 Mar 2020 15:11:04 +0100 |
parents | 89639e02cff0 |
children | 4dc2e6dc6c7d |
files | pkg/controllers/importqueue.go pkg/imports/queue.go |
diffstat | 2 files changed, 17 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/pkg/controllers/importqueue.go Wed Mar 25 12:45:56 2020 +0100 +++ b/pkg/controllers/importqueue.go Wed Mar 25 15:11:04 2020 +0100 @@ -121,7 +121,7 @@ } // Always filter review jobs. They are only for internal use. - cond(` NOT kind LIKE $%d `, `%#review`) + cond(` NOT kind LIKE '%%` + imports.ReviewJobSuffix + `'`) if query := req.FormValue("query"); query != "" { query = "%" + query + "%"
--- a/pkg/imports/queue.go Wed Mar 25 12:45:56 2020 +0100 +++ b/pkg/imports/queue.go Wed Mar 25 15:11:04 2020 +0100 @@ -108,6 +108,12 @@ runExclusive = -66666 ) +const ( + ReviewJobSuffix = "#review" + reviewJobRetrys = 10 + reviewJobWait = time.Minute +) + type importQueue struct { signalChan chan struct{} creatorsMu sync.Mutex @@ -229,7 +235,7 @@ } func (rjc *reviewedJobCreator) Description() string { - return rjc.Description() + "#reviewed" + return rjc.Description() + ReviewJobSuffix } func (*reviewedJobCreator) StageDone(context.Context, *sql.Tx, int64, Feedback) error { @@ -322,7 +328,7 @@ q.creatorsMu.Lock() defer q.creatorsMu.Unlock() q.creators[kind] = jc - q.creators[kind+"#review"] = &reviewedJobCreator{jobCreator: jc} + q.creators[kind+ReviewJobSuffix] = &reviewedJobCreator{jobCreator: jc} } @@ -598,11 +604,16 @@ if err != nil { return err } + + // Try a little harder to persist the decision. + trys := reviewJobRetrys + wait := reviewJobWait + rID, err := q.addJob( - JobKind(kind+"#review"), + JobKind(kind+ReviewJobSuffix), time.Now(), - nil, - nil, + &trys, + &wait, reviewer, false, serialized)