BUG #14860: pg_read_all_stats and pg_stat_replication

Started by Mahadevan Rover 8 years ago2 messagesbugs
Jump to latest
#1Mahadevan R
mdevan.r@gmail.com

The following bug has been logged on the website:

Bug reference: 14860
Logged by: Mahadevan R
Email address: mdevan.r@gmail.com
PostgreSQL version: 10.0
Operating system: any
Description:

User with pg_read_all_stats privilege is not able to read
some columns (listed below) from the pg_stat_replication
view. This is because these columns come from the function
pg_stat_get_wal_senders(), and this function returns non-null
values only for superuser.

To reproduce, set up streaming replication, and a user with
pg_read_all_stats privilege and "select * from
pg_stat_replication". The following columns will be null:

state
sent_lsn
write_lsn
flush_lsn
replay_lsn
sync_priority
sync_state

--
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs

#2Bruce Momjian
bruce@momjian.us
In reply to: Mahadevan R (#1)
Re: [BUGS] BUG #14860: pg_read_all_stats and pg_stat_replication

On Wed, Oct 18, 2017 at 12:40:22PM +0000, mdevan.r@gmail.com wrote:

The following bug has been logged on the website:

Bug reference: 14860
Logged by: Mahadevan R
Email address: mdevan.r@gmail.com
PostgreSQL version: 10.0
Operating system: any
Description:

User with pg_read_all_stats privilege is not able to read
some columns (listed below) from the pg_stat_replication
view. This is because these columns come from the function
pg_stat_get_wal_senders(), and this function returns non-null
values only for superuser.

To reproduce, set up streaming replication, and a user with
pg_read_all_stats privilege and "select * from
pg_stat_replication". The following columns will be null:

state
sent_lsn
write_lsn
flush_lsn
replay_lsn
sync_priority
sync_state

This bug was also reported here:

/messages/by-id/CAK_s-G0c3fXQ_Rpyvj5gHiKnaa9_H1eS+2Oopqm1eOK79V+FKw@mail.gmail.com

and fixed here:

commit 6668a54eb8ef639a3182ae9e37e4e67982c44292
Author: Simon Riggs <simon@2ndQuadrant.com>
Date: Sat Jan 6 11:48:21 2018 +0000

Default monitoring roles - errata

25fff40798fc4ac11a241bfd9ab0c45c085e2212 introduced
default monitoring roles. Apply these corrections:

* Allow access to pg_stat_get_wal_senders()
by role pg_read_all_stats

* Correct comment in pg_stat_get_wal_receiver()
to show it is no longer superuser-only.

Author: Feike Steenbergen
Reviewed-by: Michael Paquier

Apply to HEAD, then later backpatch to 10

The fix will appear in the next PG 10 minor release.

--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://enterprisedb.com

+ As you are, so once was I.  As I am, so you will be. +
+                      Ancient Roman grave inscription +