SVN Commit by andreas: r4278 - in trunk/pgadmin3: . src/frm src/schema

From: svn(at)pgadmin(dot)org
To: pgadmin-hackers(at)postgresql(dot)org
Subject: SVN Commit by andreas: r4278 - in trunk/pgadmin3: . src/frm src/schema
Date: 2005-06-03 20:05:54
Message-ID: 200506032005.j53K5sSR008674@developer.pgadmin.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-hackers

Author: andreas
Date: 2005-06-03 21:05:54 +0100 (Fri, 03 Jun 2005)
New Revision: 4278

Modified:
trunk/pgadmin3/CHANGELOG.txt
trunk/pgadmin3/src/frm/frmStatus.cpp
trunk/pgadmin3/src/schema/pgServer.cpp
Log:
Support for pgsql 8.1 pg_stat_activity

Modified: trunk/pgadmin3/CHANGELOG.txt
===================================================================
--- trunk/pgadmin3/CHANGELOG.txt 2005-06-03 19:21:18 UTC (rev 4277)
+++ trunk/pgadmin3/CHANGELOG.txt 2005-06-03 20:05:54 UTC (rev 4278)
@@ -17,6 +17,7 @@
</ul>
<br>
<ul>
+ <li>2005-06-03 AP Support for pgsql 8.1 pg_stat_activity
<li>2005-06-03 AP Support for pgsql 8.1 instrumentation
<li>2005-06-01 AP Support for Procedures aka functions with out parameters
<li>2005-06-01 AP Support for EDB8.0

Modified: trunk/pgadmin3/src/frm/frmStatus.cpp
===================================================================
--- trunk/pgadmin3/src/frm/frmStatus.cpp 2005-06-03 19:21:18 UTC (rev 4277)
+++ trunk/pgadmin3/src/frm/frmStatus.cpp 2005-06-03 20:05:54 UTC (rev 4278)
@@ -104,13 +104,14 @@
statusList->AddColumn(_("PID"), 35);
statusList->AddColumn(_("Database"), 70);
statusList->AddColumn(_("User"), 70);
- if (connection->BackendMinimumVersion(7, 4)) {
+ if (connection->BackendMinimumVersion(8, 1))
+ statusList->AddColumn(_("Client"), 70);
+
+ if (connection->BackendMinimumVersion(7, 4))
statusList->AddColumn(_("Start"), 50);
- statusList->AddColumn(_("Query"), 500);
- } else {
- statusList->AddColumn(_("Query"), 500);
- }

+ statusList->AddColumn(_("Query"), 500);
+
lockList->AddColumn(_("PID"), 50);
lockList->AddColumn(_("Database"), 50);
lockList->AddColumn(_("Relation"), 50);
@@ -118,13 +119,11 @@
lockList->AddColumn(_("TX"), 50);
lockList->AddColumn(_("Mode"), 50);
lockList->AddColumn(_("Granted"), 50);
- if (connection->BackendMinimumVersion(7, 4)) {
+ if (connection->BackendMinimumVersion(7, 4))
lockList->AddColumn(_("Start"), 50);
- lockList->AddColumn(_("Query"), 500);
- } else {
- lockList->AddColumn(_("Query"), 500);
- }

+ lockList->AddColumn(_("Query"), 500);
+
if (connection->BackendMinimumVersion(8, 0) &&
connection->HasFeature(FEATURE_FILEREAD))
{
@@ -279,23 +278,28 @@
{
statusList->InsertItem(row, NumToStr(pid), 0);
}
- statusList->SetItem(row, 1, dataSet1->GetVal(wxT("datname")));
- statusList->SetItem(row, 2, dataSet1->GetVal(wxT("usename")));
wxString qry=dataSet1->GetVal(wxT("current_query"));

- if (connection->BackendMinimumVersion(7, 4))
+ int colpos=1;
+ statusList->SetItem(row, colpos++, dataSet1->GetVal(wxT("datname")));
+ statusList->SetItem(row, colpos++, dataSet1->GetVal(wxT("usename")));
+
+ if (connection->BackendMinimumVersion(8, 1))
+ {
+ wxString client=dataSet1->GetVal(wxT("client_addr")) + wxT(":") + dataSet1->GetVal(wxT("client_port"));
+ if (client == wxT(":-1"))
+ client = _("local pipe");
+ statusList->SetItem(row, colpos++, client);
+ }
+ if (connection->BackendMinimumVersion(7, 4))
{
- if (qry.IsEmpty()) {
- statusList->SetItem(row, 3, wxEmptyString);
- statusList->SetItem(row, 4, wxEmptyString);
- } else {
- statusList->SetItem(row, 3, dataSet1->GetVal(wxT("query_start")));
- statusList->SetItem(row, 4, qry.Left(250));
- }
- } else {
- statusList->SetItem(row, 3, qry.Left(250));
+ if (qry.IsEmpty() || qry == wxT("<IDLE>"))
+ statusList->SetItem(row, colpos++, wxEmptyString);
+ else
+ statusList->SetItem(row, colpos++, dataSet1->GetVal(wxT("query_start")));
}

+ statusList->SetItem(row, colpos, qry.Left(250));
row++;
}
dataSet1->MoveNext();
@@ -372,31 +376,31 @@
{
lockList->InsertItem(row, NumToStr(pid), 0);
}
- lockList->SetItem(row, 1, dataSet2->GetVal(wxT("dbname")));
- lockList->SetItem(row, 2, dataSet2->GetVal(wxT("class")));
- lockList->SetItem(row, 3, dataSet2->GetVal(wxT("user")));
- lockList->SetItem(row, 4, dataSet2->GetVal(wxT("transaction")));
- lockList->SetItem(row, 5, dataSet2->GetVal(wxT("mode")));
- if (dataSet2->GetVal(wxT("granted")) == wxT("t")) {
- lockList->SetItem(row, 6, __("Yes"));
- } else {
- lockList->SetItem(row, 6, __("No"));
- }
+
+ int colpos=1;
+ lockList->SetItem(row, colpos++, dataSet2->GetVal(wxT("dbname")));
+ lockList->SetItem(row, colpos++, dataSet2->GetVal(wxT("class")));
+ lockList->SetItem(row, colpos++, dataSet2->GetVal(wxT("user")));
+ lockList->SetItem(row, colpos++, dataSet2->GetVal(wxT("transaction")));
+ lockList->SetItem(row, colpos++, dataSet2->GetVal(wxT("mode")));
+
+ if (dataSet2->GetVal(wxT("granted")) == wxT("t"))
+ lockList->SetItem(row, colpos++, _("Yes"));
+ else
+ lockList->SetItem(row, colpos++, _("No"));
+
wxString qry=dataSet2->GetVal(wxT("current_query"));

if (connection->BackendMinimumVersion(7, 4))
{
- if (qry.IsEmpty()) {
- lockList->SetItem(row, 7, wxEmptyString);
- lockList->SetItem(row, 8, wxEmptyString);
- } else {
- lockList->SetItem(row, 7, dataSet2->GetVal(wxT("query_start")));
- lockList->SetItem(row, 8, qry.Left(250));
- }
- } else {
- lockList->SetItem(row, 7, qry.Left(250));
+ if (qry.IsEmpty() || qry == wxT("<IDLE>"))
+ lockList->SetItem(row, colpos++, wxEmptyString);
+ else
+ lockList->SetItem(row, colpos++, dataSet2->GetVal(wxT("query_start")));
}
+ lockList->SetItem(row, colpos++, qry.Left(250));

+
row++;
}
dataSet2->MoveNext();

Modified: trunk/pgadmin3/src/schema/pgServer.cpp
===================================================================
--- trunk/pgadmin3/src/schema/pgServer.cpp 2005-06-03 19:21:18 UTC (rev 4277)
+++ trunk/pgadmin3/src/schema/pgServer.cpp 2005-06-03 20:05:54 UTC (rev 4278)
@@ -689,18 +689,33 @@
statistics->AddColumn(wxT("PID"), 35);
statistics->AddColumn(_("User"), 70);
statistics->AddColumn(_("Database"), 70);
+ if (GetConnection()->BackendMinimumVersion(8, 1))
+ {
+ statistics->AddColumn(_("Backend start"), 70);
+ statistics->AddColumn(_("Client"), 70);
+ }
statistics->AddColumn(_("Current Query"), 300);

- pgSet *stats = ExecuteSet(wxT("SELECT datname, procpid, usename, current_query FROM pg_stat_activity"));
+ pgSet *stats = ExecuteSet(wxT("SELECT * FROM pg_stat_activity"));
if (stats)
{
int pos=0;
while (!stats->Eof())
{
statistics->InsertItem(pos, stats->GetVal(wxT("procpid")), 0);
- statistics->SetItem(pos, 1, stats->GetVal(wxT("usename")));
- statistics->SetItem(pos, 2, stats->GetVal(wxT("datname")));
- statistics->SetItem(pos, 3, stats->GetVal(wxT("current_query")));
+ int colpos=1;
+ statistics->SetItem(pos, colpos++, stats->GetVal(wxT("usename")));
+ statistics->SetItem(pos, colpos++, stats->GetVal(wxT("datname")));
+ if (GetConnection()->BackendMinimumVersion(8, 1))
+ {
+ statistics->SetItem(pos, colpos++, stats->GetVal(wxT("backend_start")));
+ wxString client=stats->GetVal(wxT("client_addr")) + wxT(":") + stats->GetVal(wxT("client_port"));
+ if (client == wxT(":-1"))
+ client = _("local pipe");
+ statistics->SetItem(pos, colpos++, client);
+ }
+ statistics->SetItem(pos, colpos++, stats->GetVal(wxT("current_query")));
+
stats->MoveNext();
pos++;
}

Browse pgadmin-hackers by date

  From Date Subject
Next Message Raphaël Enrici 2005-06-04 21:51:14 Re: 1.2.2 Uploaded
Previous Message svn 2005-06-03 19:21:18 SVN Commit by andreas: r4277 - in trunk/pgadmin3: . src/db src/frm