Todos os produtos
Search
Central de documentação

PolarDB:Logical replication slot failover

Última atualização: Jun 28, 2026

Por padrão, o protocolo de replicação em streaming do PostgreSQL não sincroniza slots de replicação lógica do nó primário para o nó standby. Se ocorrer um failover, o slot será perdido e todas as assinaturas lógicas serão interrompidas. O PolarDB for PostgreSQL resolve esse problema ao sincronizar os slots de replicação lógica com o nó standby, permitindo que as assinaturas continuem funcionando sem interrupções após o failover.

Nota

Não há suporte para failover de slot de replicação física. Para obter mais informações sobre o funcionamento dos slots de replicação, consulte Replication slots na documentação do PostgreSQL.

Pré-requisitos

Antes de começar, verifique se:

  • Seu cluster PolarDB for PostgreSQL executa o PostgreSQL 11 com versão de revisão 1.1.27 ou posterior

Para verificar a versão de revisão, execute:

SHOW polar_version;

Se a versão de revisão for anterior à 1.1.27, atualize a versão de revisão antes de prosseguir.

Ative ou desative o failover de slot de replicação lógica

Controle o failover de slot de replicação lógica definindo o parâmetro polar_failover_slot_mode. Configure o parâmetro no console.

Escolha um modo

Modo

Comportamento

Segurança dos dados

Quando usar

async (padrão)

Sincroniza slots de forma assíncrona. Não há perda de dados durante o failover de cluster HA. O cliente de replicação lógica pode receber dados duplicados após o failover. Se o cliente tiver dados mais recentes que o novo primário após o failover, ele poderá ter retido dados perdidos durante o processo.

Sem perda durante failover HA; possíveis duplicatas

Adequado para a maioria das cargas de trabalho; dados duplicados são aceitáveis

sync

Sincroniza slots de forma síncrona. Garante que o cliente de replicação lógica nunca receba alterações à frente do nó standby. Não há perda de dados durante o failover.

Sem perda durante failover; consulte o caso extremo abaixo

Recomendado quando a consistência de dados é crítica

off

Desativa o failover de slot de replicação lógica.

Não aplicável

Use quando o failover para replicação lógica não for necessário

Importante

No modo sync, existe um caso extremo: se o nó standby ficar desconectado por um longo período ou estiver em reconstrução, a latência de sincronização entre primário e standby pode aumentar a ponto de o cliente de replicação lógica receber alterações à frente do standby. Se ocorrer um failover nessa janela, dados podem ser perdidos na replicação lógica, e dados gerados no novo primário também podem ser perdidos. Para evitar isso, entre em contato com o suporte para definir polar_priority_replication_force_wait como on. Isso impede que o primário envie alterações ao cliente de replicação lógica até que o standby se reconecte ou termine a reconstrução. Observe que isso reduz a disponibilidade da replicação lógica durante períodos de desconexão.

Nota

Caso dados duplicados do modo async afetem sua carga de trabalho, alterne para o modo sync.

Limitações

  • Não há suporte para failover de slot de replicação física.

Próximos passos