mirror of
https://github.com/safing/portbase
synced 2025-09-04 11:40:23 +00:00
Merge pull request #70 from safing/fix/failing-worker-shutdown
Fix shutdown of failing service workers
This commit is contained in:
commit
c479430d46
2 changed files with 6 additions and 2 deletions
|
@ -90,7 +90,11 @@ func (m *Module) runServiceWorker(name string, backoffDuration time.Duration, fn
|
||||||
// log error
|
// log error
|
||||||
sleepFor := time.Duration(failCnt) * backoffDuration
|
sleepFor := time.Duration(failCnt) * backoffDuration
|
||||||
log.Errorf("%s: service-worker %s failed (%d): %s - restarting in %s", m.Name, name, failCnt, err, sleepFor)
|
log.Errorf("%s: service-worker %s failed (%d): %s - restarting in %s", m.Name, name, failCnt, err, sleepFor)
|
||||||
time.Sleep(sleepFor)
|
select {
|
||||||
|
case <-time.After(sleepFor):
|
||||||
|
case <-m.Ctx.Done():
|
||||||
|
return
|
||||||
|
}
|
||||||
// loop to restart
|
// loop to restart
|
||||||
} else {
|
} else {
|
||||||
log.Infof("%s: service-worker %s %s - restarting now", m.Name, name, err)
|
log.Infof("%s: service-worker %s %s - restarting now", m.Name, name, err)
|
||||||
|
|
|
@ -227,7 +227,7 @@ func (res *Resource) selectVersion() {
|
||||||
|
|
||||||
// export after we finish
|
// export after we finish
|
||||||
defer func() {
|
defer func() {
|
||||||
log.Debugf("updater: selected version %s for resource %s", res.SelectedVersion, res.Identifier)
|
log.Tracef("updater: selected version %s for resource %s", res.SelectedVersion, res.Identifier)
|
||||||
|
|
||||||
if res.inUse() &&
|
if res.inUse() &&
|
||||||
res.SelectedVersion != res.ActiveVersion && // new selected version does not match previously selected version
|
res.SelectedVersion != res.ActiveVersion && // new selected version does not match previously selected version
|
||||||
|
|
Loading…
Add table
Reference in a new issue