From 24f921b0c87fa548cfecfb937402ae06c0d1bfda Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sybren=20A=2E=20St=C3=BCvel?= Date: Mon, 18 Jul 2022 19:04:15 +0200 Subject: [PATCH] Manager: add more logging when worker cannot be marked as 'seen' SQLite often errors out on this with only `interrupted (9)` as message. This logging should at least tell us whether it's our own "background context" timing out, or whether something else fishy is going on. --- internal/manager/api_impl/workers.go | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/internal/manager/api_impl/workers.go b/internal/manager/api_impl/workers.go index 650e9b29..f9832acb 100644 --- a/internal/manager/api_impl/workers.go +++ b/internal/manager/api_impl/workers.go @@ -478,7 +478,14 @@ func (f *Flamenco) workerSeen( err := f.persist.WorkerSeen(bgCtx, w) if err != nil { - logger.Error().Err(err).Msg("error marking Worker as 'seen' in the database") + if bgCtx.Err() != nil { + logger.Error(). + Err(err). + AnErr("contextError", bgCtx.Err()). + Msg("error marking Worker as 'seen' in the database, database operation timed out") + } else { + logger.Error().Err(err).Msg("error marking Worker as 'seen' in the database") + } return err } return nil