Atualização do PostgreSQL 14.4 com correção de corrupção de índice

Foi criada uma versão corretiva do SGBD PostgreSQL 14.4, que elimina um grave problema que, em determinadas circunstâncias, leva à corrupção invisível de dados em índices ao executar os comandos “CREATE INDEX CONCURRENTLY” e “REINDEX CONCURRENTLY”. Nos índices criados usando os comandos especificados, alguns registros podem não ser levados em consideração, o que levará à falta de linhas ao executar consultas SELECT envolvendo índices problemáticos.

Para determinar se os índices da árvore B foram danificados, você pode usar o comando “pg_amcheck –heapallindexed db_name”. Caso sejam identificados erros ou os comandos “CREATE INDEX CONCURRENTLY” e “REINDEX CONCURRENTLY” tenham sido utilizados em versões anteriores com outros tipos de índices (GiST, GIN, etc.), após a atualização para a versão 14.4, recomenda-se realizar a reindexação utilizando o Utilitário “reindexdb —all” ou o comando "REINDEX CONCURRENTLY index_name."

O problema afeta apenas a ramificação 14.x, que incluiu otimizações que excluem algumas transações associadas à execução de “CREATE INDEX CONCURRENTLY” e “REINDEX CONCURRENTLY” ao realizar a operação VACUUM. Como resultado dessas otimizações, os índices criados no modo CONCURRENTLY não incluíram algumas tuplas na memória heap que foram atualizadas ou truncadas durante a criação do índice.

Fonte: opennet.ru

Adicionar um comentário