From f7c4919a2ad32d396da6c4ff575f6e27878c27c7 Mon Sep 17 00:00:00 2001 From: "Torsten Schulz (local)" Date: Mon, 8 Dec 2025 16:01:25 +0100 Subject: [PATCH] Enhance error logging in change_falukant_user_money function: Added detailed logging for parameters before executing the database update and improved error handling for serialization issues, enhancing traceability and debugging capabilities. --- src/worker/base.rs | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/src/worker/base.rs b/src/worker/base.rs index 9caed4b..63f25a0 100644 --- a/src/worker/base.rs +++ b/src/worker/base.rs @@ -162,7 +162,29 @@ impl BaseWorker { let p2: &(dyn ToSql + Sync) = &money_change; let p3: &(dyn ToSql + Sync) = &action; - let _ = conn.execute("update_money", &[p1, p2, p3])?; + // Debug: Logge die Parameter kurz vor dem Execute (nur stderr) + eprintln!( + "[BaseWorker] change_falukant_user_money: calling update_money with user_id={}, money_change={}, action={}", + falukant_user_id, money_change, action + ); + + match conn.execute("update_money", &[p1, p2, p3]) { + Ok(rows) => { + // rows als Vec zurückgegeben, nichts weiter tun + let _ = rows; + } + Err(err) => { + // Wenn der Postgres-Client ein Serialisierungsproblem meldet, + // erweitern wir das Log um die tatsächlichen Parameterwerte. + if format!("{err}").contains("serializing parameter") { + eprintln!( + "[BaseWorker] Fehler beim Serialisieren der DB-Parameter: user_id={}, money_change={}, action={}. Original: {err}", + falukant_user_id, money_change, action + ); + } + return Err(err.into()); + } + } Ok(()) }