PostgreSQL 19 RC 1: o que mudou desde o Beta 4 e o que acompanhar antes do lançamento

By 7 de novembro de 2026Artigos

A cada nova versão principal do PostgreSQL, acompanhar as funcionalidades anunciadas é apenas uma parte do trabalho. Para quem administra bancos de dados, também é importante entender como esses recursos evoluem durante o desenvolvimento, quais problemas são identificados nos testes e o que precisa ser validado antes de considerar uma atualização.

Esse acompanhamento ganha importância com o PostgreSQL 19. Em outubro de 2026, o projeto disponibilizou o primeiro Release Candidate (RC 1), uma versão candidata a lançamento que sucede o período de testes beta e se aproxima da versão final.

O anúncio também trouxe uma lista de correções aplicadas desde o Beta 4, publicado em setembro. Os ajustes envolvem recursos de manutenção, planejamento de consultas, replicação lógica, processamento paralelo e exportação de dados.

Mas o que essas mudanças significam para quem trabalha com PostgreSQL? E o que ainda pode mudar antes da disponibilização geral da versão 19?

O que significa chegar ao Release Candidate?

O ciclo de desenvolvimento de uma nova versão principal do Postgres passa por etapas de desenvolvimento, testes beta e versões candidatas ao lançamento.

Durante a fase beta, os recursos são disponibilizados para que a comunidade teste as funcionalidades previstas, identifique problemas e contribua para o amadurecimento da versão. É também uma etapa em que mudanças mais significativas ainda podem ocorrer, inclusive a retirada de funcionalidades que não estejam suficientemente maduras.

O Beta 4, publicado em 24 de setembro, exemplifica esse processo. Na ocasião, o projeto retirou recursos que precisavam de mais tempo de desenvolvimento e revisão, como o suporte a consultas de grafos SQL/PGQ e comandos específicos para divisão e combinação de partições.

A decisão reforça um princípio importante do projeto: a confiabilidade da versão tem prioridade sobre a inclusão de funcionalidades a qualquer custo.

Com o RC 1, o cenário muda. As versões beta e candidatas a lançamento são consideradas versões com funcionalidades congeladas (feature freeze), ou seja, não é esperado que novos recursos sejam acrescentados. O foco passa a ser a identificação e a correção de problemas antes da disponibilização geral.

Isso não significa que o código esteja livre de defeitos ou que todas as mudanças estejam definitivamente encerradas. Uma versão candidata deve ser muito próxima da versão final, mas correções adicionais e até uma nova candidata podem ser necessárias.

Para DBAs, desenvolvedores e equipes responsáveis por plataformas de dados, esse é um momento oportuno para começar a testar compatibilidade e comportamento com cargas de trabalho representativas, sempre em ambientes que não sejam de produção.

Fonte: anúncio do PostgreSQL 19 Beta 4 e informações oficiais sobre testes beta.

O que mudou do Beta 4 para o RC 1?

De acordo com o anúncio oficial de outubro/2026, as correções aplicadas desde o Beta 4 abrangem diferentes áreas do PostgreSQL 19. Embora não representem necessariamente novas funcionalidades, elas ajudam a entender quais aspectos estão sendo refinados antes do lançamento.

1. REPACK: correções em um novo recurso de manutenção

Uma das novidades previstas para o PostgreSQL 19 é o comando REPACK, que unifica operações de reorganização de tabelas anteriormente associadas a comandos como VACUUM FULL e CLUSTER.

A reorganização pode ajudar a recuperar espaço em disco e melhorar a disposição física dos dados. Já a opção REPACK (CONCURRENTLY) permite manter leituras e escritas durante a maior parte da reorganização, reduzindo o impacto sobre a disponibilidade da aplicação. Entretanto, a etapa final exige um bloqueio exclusivo para substituir os arquivos da tabela e dos índices, interrompendo temporariamente esses acessos. Por isso, a execução ainda precisa ser planejada, especialmente em tabelas com grande volume de alterações concorrentes.

Desde o Beta 4, o projeto aplicou diversas correções nesse recurso.

Para quem administra bancos de dados, isso é um lembrete de que funcionalidades relacionadas à manutenção precisam ser avaliadas não apenas pela sua proposta, mas também pelo comportamento em diferentes condições de execução.

Em testes, vale observar a duração da operação, o consumo de recursos, o espaço necessário, os efeitos sobre a concorrência e o comportamento em tabelas representativas do ambiente. Também é importante verificar as limitações e os requisitos descritos na documentação da versão.

A existência de uma opção concorrente não elimina a necessidade de planejar a operação nem garante o mesmo resultado em todos os cenários.

2. Planejador de consultas: ajustes nas otimizações e no pg_plan_advice

O PostgreSQL 19 inclui melhorias no planejador de consultas, além do módulo pg_plan_advice, desenvolvido para permitir maior controle sobre as decisões de planejamento.

O planejador avalia diferentes estratégias para executar uma consulta e escolhe um plano com base em fatores como estatísticas, estimativas de cardinalidade e custos previstos. Pequenas diferenças nessas estimativas podem levar a estratégias de execução distintas.

Entre as correções publicadas no RC 1 estão ajustes em pg_plan_advice e em novas otimizações que dependem da possibilidade de uma expressão retornar NULL.

Esse último ponto é importante porque o tratamento de valores nulos interfere na lógica de diversas expressões SQL. Uma otimização só pode ser aplicada quando suas condições são respeitadas; caso contrário, existe o risco de alterar o resultado esperado de uma consulta.

Para DBAs e profissionais de performance, o caminho é comparar planos de execução, resultados e tempos de resposta em consultas representativas. Também vale verificar se as otimizações continuam produzindo resultados corretos diante de diferentes distribuições de dados e condições de consulta.

O objetivo não é presumir que uma nova versão tornará todas as consultas mais rápidas, mas identificar quais cargas de trabalho podem se beneficiar das mudanças e onde será necessário investigar diferenças de comportamento.

3. Replicação lógica: correções na habilitação automática

O PostgreSQL 19 prevê uma mudança relacionada à configuração da replicação lógica. Com wal_level definido como replica, o servidor poderá habilitar automaticamente a replicação lógica quando necessário, sem exigir uma reinicialização apenas para alterar esse nível de configuração.

O RC 1 inclui correções no mecanismo que habilita automaticamente o nível de WAL necessário à replicação lógica quando wal_level está configurado como replica. Nesse cenário, o valor configurado permanece inalterado, enquanto effective_wal_level indica o nível efetivamente utilizado.

O recurso pode simplificar determinados cenários de configuração, mas não elimina a necessidade de compreender os requisitos da replicação lógica. A topologia utilizada, as permissões, as publicações e assinaturas, a sincronização inicial e a capacidade de processamento continuam sendo aspectos importantes do planejamento.

Nos testes, vale verificar como a configuração se comporta nos cenários previstos para o ambiente, incluindo a criação e o gerenciamento de publicações e assinaturas, a sincronização de dados e a recuperação após interrupções.

A documentação da versão também apresenta outros avanços na replicação lógica, como a replicação de valores de sequências. São mudanças que merecem avaliação conjunta quando a arquitetura depende desse mecanismo para integração de dados ou distribuição de cargas de trabalho.

4. Autovacuum paralelo: correções no processamento de índices

Outra área contemplada pelas correções do RC 1 é o autovacuum paralelo.

O RC 1 recebeu diversas correções no autovacuum paralelo, recurso do PostgreSQL 19 que distribui entre processos o trabalho de remoção de entradas mortas e limpeza dos índices elegíveis, sem paralelizar a varredura da tabela. O recurso é controlado por autovacuum_max_parallel_workers, desabilitado por padrão, e também depende da disponibilidade de processos dentro do limite de max_parallel_workers.

Esses mecanismos têm relação direta com a administração de ambientes que acumulam grandes volumes de dados e precisam equilibrar manutenção, desempenho e disponibilidade.

A introdução do processamento paralelo, porém, também torna importante avaliar o consumo de recursos e a concorrência com as cargas de trabalho da aplicação. O ganho potencial depende das características das tabelas, dos índices, da configuração e dos recursos disponíveis.

Ao testar a nova versão, é interessante acompanhar a execução das rotinas de manutenção, o uso de CPU e I/O, a duração das operações e o comportamento de consultas concorrentes. Também vale verificar como as novas opções de configuração interagem com os limites já definidos para o ambiente.

As correções aplicadas antes do lançamento mostram que esse tipo de recurso precisa ser validado em diferentes cenários para que possa ser utilizado de forma previsível.

5. COPY com saída JSON: correção nos nomes das chaves

O comando COPY também recebeu uma correção específica.

O PostgreSQL 19 acrescenta a possibilidade de exportar dados em formato JSON com COPY TO. No RC 1, o projeto corrigiu o comportamento de COPY (query) TO … (FORMAT json) para que as chaves do JSON utilizem os nomes das colunas da consulta, incluindo aliases, em vez dos nomes das colunas originais das tabelas.

A diferença pode ser importante para processos de integração, exportação e transformação de dados, nos quais a estrutura de saída precisa corresponder ao formato esperado por outro sistema.

Por exemplo, quando uma consulta utiliza um alias para renomear uma coluna, o nome apresentado no JSON deve respeitar o resultado da consulta. Caso contrário, a estrutura exportada pode não corresponder ao contrato esperado pela aplicação que consome os dados.

Para quem utiliza o COPY em rotinas de integração, vale testar exportações com aliases, nomes de colunas repetidos ou outras situações relevantes para a aplicação, além de verificar o formato efetivamente produzido.

E as estatísticas do postgres_fdw?

O RC 1 também corrigiu a importação de estatísticas pelo postgres_fdw. A operação passa a ser executada como o proprietário da tabela estrangeira, em vez de utilizar o usuário que executa o comando ANALYZE.

Esse ajuste é relevante para ambientes que consultam dados remotos por meio do Foreign Data Wrapper do PostgreSQL. Neles, as estatísticas podem contribuir para que o planejador escolha estratégias de execução mais adequadas.

Se o ambiente utiliza postgres_fdw, vale incluir esse cenário nos testes, especialmente quando diferentes usuários e proprietários de objetos participam das rotinas de manutenção e análise.

Em conjunto, essas correções mostram que a estabilização de uma versão envolve tanto recursos novos quanto detalhes de execução, permissões e comportamento que podem afetar operações existentes.

A lista acima reúne os destaques do anúncio oficial, não todas as alterações do RC 1. A relação completa está disponível na página oficial da versão candidata.

O que ainda pode mudar antes do lançamento final?

O anúncio do RC 1 estabelece as próximas etapas do calendário de lançamento do PostgreSQL 19.

Data planejada Etapa O que acompanhar
12 de novembro de 2026 PostgreSQL 19 RC 2 Novas correções e eventuais ajustes identificados durante a validação.
19 de novembro de 2026 Disponibilização geral (GA) Publicação da versão final, caso não seja necessário adiar o lançamento ou gerar outra candidata.

O RC 2 foi planejado para 12 de novembro, na mesma data da próxima atualização das versões suportadas do PostgreSQL. Segundo o projeto, essa atualização incluirá um conjunto significativo de correções, que também serão incorporadas ao PostgreSQL 19 antes da disponibilização geral.

A data planejada para o lançamento final é 19 de novembro. No entanto, o calendário depende da avaliação dos problemas encontrados durante os testes. Se for identificada uma questão que exija mais tempo de correção, o projeto poderá adiar o lançamento ou publicar uma candidata adicional.

É importante interpretar esse calendário corretamente. As datas indicam o planejamento oficial disponível no momento, não uma garantia de que a versão final será necessariamente publicada naquele dia.

Também não se espera que o RC 2 seja uma versão com um novo conjunto de funcionalidades. Como a etapa é voltada à estabilização, o foco deve continuar nas correções e na validação do comportamento da versão.

Para acompanhar essas mudanças, a referência mais confiável é o site oficial do PostgreSQL, em conjunto com as notas de lançamento da versão 19.

Como o DBA pode se preparar para o PostgreSQL 19?

A fase de Release Candidate oferece uma oportunidade para conhecer as mudanças antes da versão final, sem precisar esperar o lançamento para começar a avaliar seus possíveis impactos.

O primeiro passo é identificar quais recursos novos têm relação com o ambiente administrado. Nem todas as mudanças serão relevantes para todas as instalações. Um ambiente que utiliza intensivamente replicação lógica, por exemplo, terá prioridades de teste diferentes de outro em que a maior preocupação está na manutenção de tabelas ou na performance de consultas.

A partir disso, alguns cuidados ajudam a organizar a avaliação:

  1. Revisar as mudanças documentadas: Leia as notas de lançamento e identifique funcionalidades, alterações de comportamento e incompatibilidades que possam afetar a instalação. Dê atenção especial às extensões e ferramentas das quais o ambiente depende.
  1. Preparar um ambiente de testes representativo: Utilize uma instalação isolada, com dados de teste e configurações próximas das utilizadas na operação. Quando possível, reproduza consultas, rotinas de manutenção e integrações que sejam importantes para o negócio.
  1. Validar aplicações e extensões: Confira se os componentes utilizados são compatíveis com a nova versão e teste os fluxos mais críticos. A compatibilidade não deve ser presumida apenas porque a aplicação já funciona em uma versão anterior.
  1. Comparar desempenho e comportamento: Registre resultados de consultas, consumo de recursos e duração de operações relevantes. Uma comparação útil precisa considerar condições de teste equivalentes e observar tanto possíveis ganhos quanto regressões.
  1. Planejar a atualização: Antes de definir uma data para migração, avalie os requisitos de atualização de versão principal, a estratégia de backup e restauração, a janela de manutenção, as dependências e o plano de reversão.

O PostgreSQL 19 RC 1 não deve ser utilizado em produção. A recomendação do projeto é reservar versões beta e candidatas a lançamento para testes. Para migrar uma instalação anterior, será necessário utilizar uma estratégia apropriada de atualização de versão principal, como pg_upgrade, pg_dump e pg_restore, ou replicação lógica, conforme o cenário.

Mais informações estão disponíveis na documentação oficial sobre atualização para o PostgreSQL 19.

Acompanhar o desenvolvimento também faz parte da administração

A chegada do PostgreSQL 19 RC 1 representa mais do que uma nova data no calendário. Ela marca a transição para uma etapa em que a atenção se concentra na confiabilidade, na compatibilidade e na correção dos detalhes que podem fazer diferença em ambientes reais.

As mudanças publicadas desde o Beta 4 envolvem manutenção, otimização de consultas, replicação e integração de dados. Para quem administra bancos, conhecê-las ajuda a identificar o que merece ser testado e quais aspectos podem exigir planejamento antes de uma futura atualização.

Até o lançamento final, previsto para 19 de novembro de 2026, o acompanhamento das versões candidatas e das notas oficiais permite atualizar essa avaliação conforme novas informações forem publicadas.

A melhor preparação não consiste em atualizar o ambiente assim que uma nova versão é disponibilizada, mas em entender o que mudou, avaliar o que se aplica ao cenário administrado e reunir evidências suficientes para tomar uma decisão consciente.

Receba mais conteúdos como este!

Assine a nossa newsletter e acompanhe conteúdos técnicos, análises e discussões sobre PostgreSQL, arquitetura e engenharia de dados.

[Quero receber os próximos conteúdos]

Share