From aca42a2a3dc95fa2b4a1e6a1960d5cc834850034 Mon Sep 17 00:00:00 2001 From: Euler Taveira Date: Mon, 4 Nov 2019 14:45:38 +0000 Subject: [PATCH] Show only rows that open connections in some system views It is pointless to show auxiliary processes that do not open connections to Postgres in pg_stat_ssl and pg_stat_gssapi. This change affects compatibility with previous versions. --- src/backend/catalog/system_views.sql | 6 ++++-- src/test/regress/expected/rules.out | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/backend/catalog/system_views.sql b/src/backend/catalog/system_views.sql index 9fe4a47..ce39808 100644 --- a/src/backend/catalog/system_views.sql +++ b/src/backend/catalog/system_views.sql @@ -826,7 +826,8 @@ CREATE VIEW pg_stat_ssl AS S.ssl_client_dn AS client_dn, S.ssl_client_serial AS client_serial, S.ssl_issuer_dn AS issuer_dn - FROM pg_stat_get_activity(NULL) AS S; + FROM pg_stat_get_activity(NULL) AS S + WHERE S.client_port IS NOT NULL; CREATE VIEW pg_stat_gssapi AS SELECT @@ -834,7 +835,8 @@ CREATE VIEW pg_stat_gssapi AS S.gss_auth AS gss_authenticated, S.gss_princ AS principal, S.gss_enc AS encrypted - FROM pg_stat_get_activity(NULL) AS S; + FROM pg_stat_get_activity(NULL) AS S + WHERE S.client_port IS NOT NULL; CREATE VIEW pg_replication_slots AS SELECT diff --git a/src/test/regress/expected/rules.out b/src/test/regress/expected/rules.out index 210e9cd..14e7214 100644 --- a/src/test/regress/expected/rules.out +++ b/src/test/regress/expected/rules.out @@ -1845,7 +1845,8 @@ pg_stat_gssapi| SELECT s.pid, s.gss_auth AS gss_authenticated, s.gss_princ AS principal, s.gss_enc AS encrypted - FROM pg_stat_get_activity(NULL::integer) s(datid, pid, usesysid, application_name, state, query, wait_event_type, wait_event, xact_start, query_start, backend_start, state_change, client_addr, client_hostname, client_port, backend_xid, backend_xmin, backend_type, ssl, sslversion, sslcipher, sslbits, sslcompression, ssl_client_dn, ssl_client_serial, ssl_issuer_dn, gss_auth, gss_princ, gss_enc); + FROM pg_stat_get_activity(NULL::integer) s(datid, pid, usesysid, application_name, state, query, wait_event_type, wait_event, xact_start, query_start, backend_start, state_change, client_addr, client_hostname, client_port, backend_xid, backend_xmin, backend_type, ssl, sslversion, sslcipher, sslbits, sslcompression, ssl_client_dn, ssl_client_serial, ssl_issuer_dn, gss_auth, gss_princ, gss_enc) + WHERE (s.client_port IS NOT NULL); pg_stat_progress_cluster| SELECT s.pid, s.datid, d.datname, @@ -1964,7 +1965,8 @@ pg_stat_ssl| SELECT s.pid, s.ssl_client_dn AS client_dn, s.ssl_client_serial AS client_serial, s.ssl_issuer_dn AS issuer_dn - FROM pg_stat_get_activity(NULL::integer) s(datid, pid, usesysid, application_name, state, query, wait_event_type, wait_event, xact_start, query_start, backend_start, state_change, client_addr, client_hostname, client_port, backend_xid, backend_xmin, backend_type, ssl, sslversion, sslcipher, sslbits, sslcompression, ssl_client_dn, ssl_client_serial, ssl_issuer_dn, gss_auth, gss_princ, gss_enc); + FROM pg_stat_get_activity(NULL::integer) s(datid, pid, usesysid, application_name, state, query, wait_event_type, wait_event, xact_start, query_start, backend_start, state_change, client_addr, client_hostname, client_port, backend_xid, backend_xmin, backend_type, ssl, sslversion, sslcipher, sslbits, sslcompression, ssl_client_dn, ssl_client_serial, ssl_issuer_dn, gss_auth, gss_princ, gss_enc) + WHERE (s.client_port IS NOT NULL); pg_stat_subscription| SELECT su.oid AS subid, su.subname, st.pid, -- 2.7.4