diff --git a/coderd/database/errors.go b/coderd/database/errors.go index 90a4ecf42e2c6..bacddf8223408 100644 --- a/coderd/database/errors.go +++ b/coderd/database/errors.go @@ -1,6 +1,7 @@ package database import ( + "context" "errors" "github.com/lib/pq" @@ -40,7 +41,9 @@ func IsUniqueViolation(err error, uniqueConstraints ...UniqueConstraint) bool { func IsQueryCanceledError(err error) bool { var pqErr *pq.Error if errors.As(err, &pqErr) { - return pqErr.Code.Name() == "query_canceled" + return pqErr.Code == "57014" // query_canceled + } else if errors.Is(err, context.Canceled) || errors.Is(err, context.DeadlineExceeded) { + return true } return false diff --git a/enterprise/tailnet/pgcoord.go b/enterprise/tailnet/pgcoord.go index 37c516f5aa65e..7add7bb135c9e 100644 --- a/enterprise/tailnet/pgcoord.go +++ b/enterprise/tailnet/pgcoord.go @@ -424,7 +424,7 @@ func (b *binder) writeOne(bnd binding) error { default: panic("unhittable") } - if err != nil { + if err != nil && !database.IsQueryCanceledError(err) { b.logger.Error(b.ctx, "failed to write binding to database", slog.F("client_id", bnd.client), slog.F("agent_id", bnd.agent),