furiko-io / furiko

Kubernetes cron and batch job platform
https://furiko.io
Apache License 2.0
478 stars 21 forks source link

Controller crash when deleting a JobConfig #101

Closed irvinlim closed 1 year ago

irvinlim commented 2 years ago

Observed panic when deleting a JobConfig that has no schedule set:

panic: time: missing Location in call to Time.In

goroutine 259 [running]:
time.Time.In(...)
        /usr/local/go/src/time/time.go:1105
github.com/furiko-io/furiko/pkg/execution/util/schedule.(*Schedule).Bump(0xc0004d12f0?, 0xc00060cf00?, {0x40d425?, 0x7f81f46e2b00?, 0x29e0220?})
        /go/src/github.com/furiko-io/furiko/pkg/execution/util/schedule/schedule.go:153 +0x5f9
github.com/furiko-io/furiko/pkg/execution/controllers/croncontroller.(*CronWorker).refreshUpdatedJobConfigs(0xc00003a780, {0x1a96bb4?, 0x22?, 0x29e0220?})
        /go/src/github.com/furiko-io/furiko/pkg/execution/controllers/croncontroller/cron_worker.go:192 +0x2bf
github.com/furiko-io/furiko/pkg/execution/controllers/croncontroller.(*CronWorker).Work(0xc00003a780)
        /go/src/github.com/furiko-io/furiko/pkg/execution/controllers/croncontroller/cron_worker.go:129 +0x258
github.com/furiko-io/furiko/pkg/execution/controllers/croncontroller.instrumentWorkerMetrics.func1()
        /go/src/github.com/furiko-io/furiko/pkg/execution/controllers/croncontroller/metrics.go:30 +0x62
github.com/furiko-io/furiko/pkg/execution/controllers/croncontroller.ClockTickUntil(0xc0004c7420, 0x0?, 0xc00041d0e0)
        /go/src/github.com/furiko-io/furiko/pkg/execution/controllers/croncontroller/ticker.go:42 +0x247
created by github.com/furiko-io/furiko/pkg/execution/controllers/croncontroller.(*CronWorker).Start
        /go/src/github.com/furiko-io/furiko/pkg/execution/controllers/croncontroller/cron_worker.go:98 +0x12a