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.

demandé il y a 5 ans584 vues
1 réponse
0
Réponse acceptée

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
répondu il y a 5 ans

Vous n'êtes pas connecté. Se connecter pour publier une réponse.

Une bonne réponse répond clairement à la question, contient des commentaires constructifs et encourage le développement professionnel de la personne qui pose la question.

Instructions pour répondre aux questions