# HG changeset patch # User Rob Hoelz # Date 1378144551 -7200 # Node ID 04bf76c3e4c67226b5640ed987a70577caebd7e5 # Parent 7d2d440e2fa5bddf0e7d3f62ea85d64c7f5f6b8a mod_mam_sql: Add better error handling diff -r 7d2d440e2fa5 -r 04bf76c3e4c6 mod_mam_sql/mod_mam_sql.lua --- a/mod_mam_sql/mod_mam_sql.lua Sun Oct 06 17:30:21 2013 +0200 +++ b/mod_mam_sql/mod_mam_sql.lua Mon Sep 02 19:55:51 2013 +0200 @@ -114,13 +114,20 @@ if params.driver == "PostgreSQL" then sql = sql:gsub("`", "\""); end + if not connection then + return nil, 'connection failed'; + end -- do prepared statement stuff local stmt, err = connection:prepare(sql); - if not stmt and not test_connection() then error("connection failed"); end + if not stmt and not test_connection() then + return nil, "connection failed"; + end if not stmt then module:log("error", "QUERY FAILED: %s %s", err, debug.traceback()); return nil, err; end -- run query local ok, err = stmt:execute(...); - if not ok and not test_connection() then error("connection failed"); end + if not ok and not test_connection() then + return nil, "connection failed"; + end if not ok then return nil, err; end return stmt;