Log Message:
-----------
Make sure IsAlive check isn't affected by dead transactions
Modified Files:
--------------
pgadmin3/src/db:
pgConn.cpp (r1.62 -> r1.63)
Index: pgConn.cpp
===================================================================
RCS file: /projects/pgadmin3/src/db/pgConn.cpp,v
retrieving revision 1.62
retrieving revision 1.63
diff -Lsrc/db/pgConn.cpp -Lsrc/db/pgConn.cpp -u -w -r1.62 -r1.63
--- src/db/pgConn.cpp
+++ src/db/pgConn.cpp
@@ -429,6 +429,12 @@
PGresult *qryRes = PQexec(conn, "SELECT 1;");
lastResultStatus = PQresultStatus(qryRes);
+ if (lastResultStatus != PGRES_TUPLES_OK)
+ {
+ PQclear(qryRes);
+ qryRes = PQexec(conn, "ROLLBACK TRANSACTION; SELECT 1;");
+ lastResultStatus = PQresultStatus(qryRes);
+ }
PQclear(qryRes);
// Check for errors
---------------------------(end of broadcast)---------------------------
TIP 8: explain analyze is your friend