Aktualizácia PostgreSQL 14.4 s opravou poškodenia indexov

Bol sa vydaný opravený release databázového systému PostgreSQL 14.4, v ktorom bola odstránená závažná chyba, ktorá za určitých okolností mohla viesť k neviditeľnému poškodeniu údajov v indexoch pri vykonávaní príkazov „CREATE INDEX CONCURRENTLY“ a „REINDEX CONCURRENTLY“. V indexoch vytvorených pomocou týchto príkazov nemusia byť zahrnuté niektoré záznamy, čo spôsobí preskočenie jednotlivých riadkov pri vykonávaní SELECT dopytov s problémovými indexmi.

Na zistenie poškodenia indexov B-tree môžete použiť príkaz „pg_amcheck —heapallindexed názov_DB“. V prípade zistenia chýb alebo ak boli v predchádzajúcich verziách použité príkazy „CREATE INDEX CONCURRENTLY“ a „REINDEX CONCURRENTLY“ s inými typmi indexov (GiST, GIN a pod.) sa po aktualizácii na verziu 14.4 odporúča vykonať preindexáciu utilitou „reindexdb —all“ alebo príkazom „REINDEX CONCURRENTLY názov_indexu“.

Problém sa týka len vetvy 14.x, do ktorej boli zahrnuté optimalizácie, ktoré pri vykonávaní operácie VACUUM vylučovali niektoré transakcie súvisiace s vykonávaním „CREATE INDEX CONCURRENTLY“ a „REINDEX CONCURRENTLY“. V dôsledku týchto optimalizácií sa do indexov vytvorených v režime „CONCURRENTLY“ nedostali niektoré k tuples v heap pamäti, ktoré boli aktualizované alebo odstránené počas vytvárania indexu.

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster