PostgreSQL 14.4 värskendus koos indeksi korruptsiooniparandusega

Loodud on PostgreSQL DBMS 14.4 korrigeeriv väljalase, mis kõrvaldab tõsise probleemi, mis teatud asjaoludel põhjustab indeksites nähtamatut andmete riknemist käskude "CREATE INDEX COCURRENTLY" ja "REINDEX CONCURRENTLY" täitmisel. Määratud käskude abil loodud indeksites ei pruugita mõnda kirjet arvesse võtta, mis põhjustab probleemseid indekseid hõlmavate SELECT päringute täitmisel ridade puudumist.

Et teha kindlaks, kas B-puu indeksid on kahjustatud, võite kasutada käsku "pg_amcheck –heapallindexed db_name". Kui tuvastatakse tõrked või käske “LOO INDEKSI KOGEMISELT” ja “REINDEX KOGEMISELT” kasutati eelmistes väljaannetes koos teist tüüpi indeksidega (GiST, GIN jne), on pärast versioonile 14.4 värskendamist soovitatav teha uuesti indekseerimine, kasutades Utiliit "reindexdb —all" või käsk "REINDEX CONCURRENTLY indeksi_nimi".

Probleem puudutab ainult 14.x haru, mis hõlmas optimeerimisi, mis välistavad VACUUM-toimingu täitmisel mõned tehingud, mis on seotud funktsioonide „LOO INDEKSI KOGEMISELT” ja „REINDEX KOGEMISELT” täitmisega. Nende optimeerimiste tulemusena ei sisaldanud režiimis KOGEMISELT loodud indeksid kuhjamälus mõningaid kortereid, mida indeksi loomise ajal värskendati või kärbiti.

Allikas: opennet.ru

Lisa kommentaar