comparison pkg/imports/queue.go @ 5115:bb5459faadb7 queued-stage-done

Dont leave old jobs behind if retrying remove jobs.
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Wed, 25 Mar 2020 18:02:46 +0100
parents da26076ffafe
children a4c8ed61e4df
comparison
equal deleted inserted replaced
5114:da26076ffafe 5115:bb5459faadb7
992 } 992 }
993 if idj.sendEmail { 993 if idj.sendEmail {
994 go sendNotificationMail(idj.user, jc.Description(), state, idj.id) 994 go sendNotificationMail(idj.user, jc.Description(), state, idj.id)
995 } 995 }
996 996
997 switch { 997 if retry {
998 case retry:
999 nid, err := q.addJob( 998 nid, err := q.addJob(
1000 idj.kind, 999 idj.kind,
1001 idj.nextDue(), 1000 idj.nextDue(),
1002 idj.triesLeftPointer(), 1001 idj.triesLeftPointer(),
1003 idj.waitRetryPointer(), 1002 idj.waitRetryPointer(),
1006 if err != nil { 1005 if err != nil {
1007 log.Printf("error: retry enqueue failed: %v\n", err) 1006 log.Printf("error: retry enqueue failed: %v\n", err)
1008 } else { 1007 } else {
1009 log.Printf("info: re-enqueued job with id %d\n", nid) 1008 log.Printf("info: re-enqueued job with id %d\n", nid)
1010 } 1009 }
1011 case remove: 1010 }
1011 if remove {
1012 if err := deleteJob(ctx, idj.id); err != nil { 1012 if err := deleteJob(ctx, idj.id); err != nil {
1013 log.Printf("error: deleting job %d failed: %v\n", idj.id, err) 1013 log.Printf("error: deleting job %d failed: %v\n", idj.id, err)
1014 } 1014 }
1015 } 1015 }
1016 }(jc, idj) 1016 }(jc, idj)