From e4a56ab04d68006b7b958d424b2cfd49b2f1f528 Mon Sep 17 00:00:00 2001 From: Stephen Adamson Date: Sat, 11 Jul 2026 16:04:48 +0100 Subject: [PATCH] fix: add defer tx.Rollback to CreateTipPayment to prevent transaction leak --- backend/handlers/payments/handlers.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/backend/handlers/payments/handlers.go b/backend/handlers/payments/handlers.go index 8bb7aaa..f767495 100644 --- a/backend/handlers/payments/handlers.go +++ b/backend/handlers/payments/handlers.go @@ -1779,6 +1779,11 @@ func CreateTipPayment(w http.ResponseWriter, r *http.Request) { http.Error(w, "internal server error", http.StatusInternalServerError) return } + defer func() { + if err := tx.Rollback(r.Context()); err != nil && err.Error() != "tx is closed" { + slog.Error("failed to rollback transaction", "err", err) + } + }() paymentID, err := service.CreatePaymentRecordTx(r.Context(), tx, record, nil) if err != nil {