On Wed, 13 Aug 2003, David Wheeler wrote: > >> You can see that this gets really ugly. Anyone seen anything like > >> this, > >> or have any idea what could be causing these problems? > > > > Try changing your ping method or removing the ping and see if the > > problem persists. > > Not sure I want to go into hacking DBD::Pg's internals at this point... >
here is a patch that gives some more info on what is going on in ping(): pandora:~/dbdpg/head/dbdpg:$ cvs diff -u dbdimp.c Index: dbdimp.c =================================================================== RCS file: /usr/local/cvsroot/dbdpg/dbdpg/dbdimp.c,v retrieving revision 1.28 diff -u -r1.28 dbdimp.c --- dbdimp.c 23 Jul 2003 13:35:46 -0000 1.28 +++ dbdimp.c 13 Aug 2003 21:08:55 -0000 @@ -281,9 +281,13 @@ if (dbis->debug >= 1) { PerlIO_printf(DBILOGFP, "dbd_db_ping\n"); } if (NULL != imp_dbh->conn) { + PerlIO_printf(DBILOGFP, "before PQexec\n"); result = PQexec(imp_dbh->conn, " "); + PerlIO_printf(DBILOGFP, "result: %i\n", result); status = result ? PQresultStatus(result) : -1; + PerlIO_printf(DBILOGFP, "status: %i\n", status); PQclear(result); + PerlIO_printf(DBILOGFP, "PQclear\n"); if (PGRES_EMPTY_QUERY != status) { return 0; Rudy