52.55. pg_subscription_rel #

O catálogo pg_subscription_rel armazena o estado de cada relação replicada em cada subscrição. Este é um mapeamento de muitos para muitos.

Este catálogo contém apenas tabelas conhecidas pela subscrição após a execução de CREATE SUBSCRIPTION ou ALTER SUBSCRIPTION ... REFRESH PUBLICATION.

Tabela 52.55. Colunas de pg_subscription_rel

Coluna Tipo de dados

Descrição

srsubid oid (referencia pg_subscription.oid)

Referência à subscrição

srrelid oid (referencia pg_class.oid)

Referência à relação

srsubstate char

Código do estado: i = inicialização, d = dados sendo copiados, f = cópia da tabela finalizada, s = sincronizado, r = pronto (replicação normal)

srsublsn pg_lsn

LSN remoto da mudança de estado usada para coordenação de sincronização quando nos estados s ou r, caso contrário nulo


Exemplo 52.29. Exemplo do tradutor

Estado das relações replicadas

Uso do catálogo pg_subscription_rel para mostrar o estado de cada relação replicada em cada subscrição no banco de dados ana da usuária ana, e uso também do meta-comando \dRs do psql para mostrar a lista de subscrições. Os comandos abaixo foram executados no servidor de destino (subscritor), e não no servidor de origem (publicador).

 
ana=> SELECT
ana->     s.subname,
ana->     r.srrelid::regclass,
ana->     r.srsubstate,
ana->     r.srsublsn
ana-> FROM pg_subscription_rel r
ana-> LEFT JOIN pg_subscription s ON r.srsubid = s.oid;

  subname   | srrelid | srsubstate |  srsublsn
------------+---------+------------+------------
 biblioteca | editora | r          | 1/BE003C00
 biblioteca | livro   | r          | 1/BE003C00
 biblioteca | autor   | r          | 1/BE005480
(3 linhas)

ana=> \dRs

            Lista de subscrições
    Nome    | Dono | Ativado |  Publicação
------------+------+---------+--------------
 biblioteca | ana  | t       | {biblioteca}


52.55.1. Veja também #

CREATE SUBSCRIPTION, ALTER SUBSCRIPTION, DROP SUBSCRIPTION, CREATE PUBLICATION, ALTER PUBLICATION, pg_publication, pg_publication_tables, pg_subscription