Author: dpage
Date: 2005-11-25 11:37:41 +0000 (Fri, 25 Nov 2005)
New Revision: 4760
Modified:
trunk/pgadmin3/CHANGELOG.txt
trunk/pgadmin3/src/frm/frmStatus.cpp
Log:
Fix the server status SQL query
Modified: trunk/pgadmin3/CHANGELOG.txt
===================================================================
--- trunk/pgadmin3/CHANGELOG.txt 2005-11-25 08:45:59 UTC (rev 4759)
+++ trunk/pgadmin3/CHANGELOG.txt 2005-11-25 11:37:41 UTC (rev 4760)
@@ -18,6 +18,7 @@
</ul>
<br>
<ul>
+ <li>2005-11-25 DP 1.4.1 Fix the server status SQL query
<li>2005-11-25 FGP 1.4.1 Don't include pgAgent in the Mac OSX bundle
<li>2005-11-25 FGP 1.4.1 Include pg_dump/pg_restore in the Mac OSX bundle
<li>2005-11-20 DP 1.4.1 Use a proper 'Save As' style dialogue for selecting backup files
Modified: trunk/pgadmin3/src/frm/frmStatus.cpp
===================================================================
--- trunk/pgadmin3/src/frm/frmStatus.cpp 2005-11-25 08:45:59 UTC (rev 4759)
+++ trunk/pgadmin3/src/frm/frmStatus.cpp 2005-11-25 11:37:41 UTC (rev 4760)
@@ -358,22 +358,26 @@
long row=0;
wxString sql;
if (connection->BackendMinimumVersion(7, 4)) {
- sql = wxT("SELECT ")
- wxT("(SELECT datname FROM pg_database WHERE oid = database) AS dbname, ")
- wxT("relation::regclass AS class, ")
- wxT("pg_get_userbyid(pg_stat_get_backend_userid(pid)::int4) as user, ")
- wxT("transaction, pid, mode, granted, ")
- wxT("pg_stat_get_backend_activity(pid) AS current_query, ")
- wxT("pg_stat_get_backend_activity_start(pid) AS query_start ")
- wxT("FROM pg_locks ORDER BY pid");
+ sql = wxT("SELECT ")
+ wxT("(SELECT datname FROM pg_database WHERE oid = pgl.database) AS dbname, ")
+ wxT("pgl.relation::regclass AS class, ")
+ wxT("pg_get_userbyid(pg_stat_get_backend_userid(svrid)) as user, ")
+ wxT("pgl.transaction, pg_stat_get_backend_pid(svrid) AS pid, pgl.mode, pgl.granted, ")
+ wxT("pg_stat_get_backend_activity(svrid) AS current_query, ")
+ wxT("pg_stat_get_backend_activity_start(svrid) AS query_start ")
+ wxT("FROM pg_stat_get_backend_idset() svrid, pg_locks pgl ")
+ wxT("WHERE pgl.pid = pg_stat_get_backend_pid(svrid) ")
+ wxT("ORDER BY pid;");
} else {
- sql = wxT("SELECT ")
- wxT("(SELECT datname FROM pg_database WHERE oid = database) AS dbname, ")
- wxT("relation::regclass AS class, ")
- wxT("pg_get_userbyid(pg_stat_get_backend_userid(pid)::int4) as user, ")
- wxT("transaction, pid, mode, granted, ")
- wxT("pg_stat_get_backend_activity(pid) AS current_query ")
- wxT("FROM pg_locks ORDER BY pid");
+ sql = wxT("SELECT ")
+ wxT("(SELECT datname FROM pg_database WHERE oid = pgl.database) AS dbname, ")
+ wxT("pgl.relation::regclass AS class, ")
+ wxT("pg_get_userbyid(pg_stat_get_backend_userid(svrid)) as user, ")
+ wxT("pgl.transaction, pg_stat_get_backend_pid(svrid) AS pid, pgl.mode, pgl.granted, ")
+ wxT("pg_stat_get_backend_activity(svrid) AS current_query ")
+ wxT("FROM pg_stat_get_backend_idset() svrid, pg_locks pgl ")
+ wxT("WHERE pgl.pid = pg_stat_get_backend_pid(svrid) ")
+ wxT("ORDER BY pid;");
}
pgSet *dataSet2=connection->ExecuteSet(sql);