RDS Postgres Logical replication access to essential table denied

0
postgres=> \du postgres
                        List of roles
 Role name |          Attributes           |    Member of    
-----------+-------------------------------+-----------------
 postgres  | Create role, Create DB       +| {rds_superuser}
           | Password valid until infinity | 

postgres=> select * from pg_replication_origin_status;
ERROR:  permission denied for relation pg_replication_origin_status
postgres=> 

This table is essential to tracking progress of logical replication. Without it, there is not clear way to track if the LSN of the local and remote ends of the replication slot are in sync. The user in the example is a member of rds_superuser.

https://www.postgresql.org/docs/10/replication-origins.html

Is there a particular reason that this system table is not accessible or was this just a mistake in the implementation.

已提问 5 年前583 查看次数
1 回答
0
已接受的回答

Can you use the function call instead of the view?

postgres=> select * from pg_show_replication_origin_status();
 local_id | external_id | remote_lsn | local_lsn 
----------+-------------+------------+-----------
(0 rows)

Thanks.
Regards,
Jignesh

AWS
已回答 5 年前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则