mirror of
https://github.com/hibiken/asynq.git
synced 2024-12-25 07:12:17 +08:00
Invoke error handler when ctx.Done channel is closed
This commit is contained in:
parent
8d43fe407a
commit
007fac8055
@ -203,6 +203,9 @@ func (p *processor) exec() {
|
||||
return
|
||||
case <-ctx.Done():
|
||||
p.logger.Debugf("Retrying task. task id=%s", msg.ID) // TODO: Improve this log message and above
|
||||
if p.errHandler != nil {
|
||||
p.errHandler.HandleError(ctx, task, ctx.Err())
|
||||
}
|
||||
p.retryOrKill(ctx, msg, ctx.Err())
|
||||
return
|
||||
case resErr := <-resCh:
|
||||
|
@ -125,7 +125,7 @@ type Config struct {
|
||||
ShutdownTimeout time.Duration
|
||||
}
|
||||
|
||||
// An ErrorHandler handles errors returned by the task handler.
|
||||
// An ErrorHandler handles an error occured during task processing.
|
||||
type ErrorHandler interface {
|
||||
HandleError(ctx context.Context, task *Task, err error)
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user