summaryrefslogtreecommitdiff
path: root/internal/server
diff options
context:
space:
mode:
authorPaul Bütow <pbuetow@mimecast.com>2020-02-12 16:09:18 +0000
committerPaul Bütow <pbuetow@mimecast.com>2020-02-12 16:09:18 +0000
commitb4176ce3443567b16fef9f91c5a42a63d8d5e026 (patch)
tree84705851aab78f1d942d5f455457f31ec14e4bec /internal/server
parente57567934750a86b3f6be6a572f68ae501d9b4b3 (diff)
separate context for each client in the scheduler
Diffstat (limited to 'internal/server')
-rw-r--r--internal/server/scheduler.go5
1 files changed, 4 insertions, 1 deletions
diff --git a/internal/server/scheduler.go b/internal/server/scheduler.go
index 586ac0b..e0cecfd 100644
--- a/internal/server/scheduler.go
+++ b/internal/server/scheduler.go
@@ -99,8 +99,11 @@ func (s *scheduler) runJobs(ctx context.Context) {
continue
}
+ jobCtx, cancel := context.WithCancel(ctx)
+ defer cancel()
+
logger.Info(fmt.Sprintf("Starting scheduled job %s", scheduled.Name))
- status := client.Start(ctx)
+ status := client.Start(jobCtx)
logMessage := fmt.Sprintf("Job exited with status %d", status)
if err := os.Rename(tmpOutfile, outfile); err == nil {