From 08505c02ddd51db2694c723231dd623e0a33679d Mon Sep 17 00:00:00 2001 From: "Stephen R. van den Berg" <srb@cuci.nl> Date: Sat, 1 Jul 2017 08:51:21 +0200 Subject: [PATCH] pgsql: Improve debugging log. --- lib/modules/Sql.pmod/pgsql.pike | 14 ++++++++------ lib/modules/Sql.pmod/pgsql_util.pmod | 2 +- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/lib/modules/Sql.pmod/pgsql.pike b/lib/modules/Sql.pmod/pgsql.pike index fd5071f32d..cff8ae5375 100644 --- a/lib/modules/Sql.pmod/pgsql.pike +++ b/lib/modules/Sql.pmod/pgsql.pike @@ -1215,12 +1215,12 @@ private void procmessage() { } break; } - PD("Closing database processloop %O\n",err); + PD("Closing database processloop %s\n", err ? describe_backtrace(err) : ""); _delayederror=err; if (objectp(portal)) { - #ifdef PG_DEBUG +#ifdef PG_DEBUG showportal(0); - #endif +#endif portal->_purgeportal(); } if(!terminating && _options.reconnect) @@ -1234,7 +1234,7 @@ private void procmessage() { if (err) { unnamedstatement=0; termlock = 0; - throw(err); + PD("Terminating processloop due to %s\n", describe_backtrace(err)); } } @@ -1251,10 +1251,12 @@ private void procmessage() { catch(cancelquery()); if (unnamedstatement) termlock = unnamedstatement->lock(1); - c->close(); + if (c) // Prevent trivial backtraces + c->close(); if (unnamedstatement) lock = unnamedstatement->lock(1); - destruct(c); + if (c) + destruct(c); lock = 0; destruct(waitforauthready); } diff --git a/lib/modules/Sql.pmod/pgsql_util.pmod b/lib/modules/Sql.pmod/pgsql_util.pmod index b51d3cbf41..713073f8c2 100644 --- a/lib/modules/Sql.pmod/pgsql_util.pmod +++ b/lib/modules/Sql.pmod/pgsql_util.pmod @@ -249,7 +249,7 @@ class conxiin { } final int read_cb(mixed id,mixed b) { - PD("Read callback %O\n",((string)b) + PD("Read callback %O\n", b && ((string)b) #ifndef PG_DEBUGMORE [..255] #endif -- GitLab