Update von PostgreSQL 14.4 mit einer Behebung von Indexbeschädigungen

Ein Korrektur-Release für die PostgreSQL-Datenbankversion 14.4 wurde erstellt, in dem ein schwerwiegendes Problem behoben wurde, das unter bestimmten Umständen zu unbemerkt beschädigten Daten in Indizes führte, wenn die Befehle „CREATE INDEX CONCURRENTLY“ und „REINDEX CONCURRENTLY“ ausgeführt wurden. In den mit diesen Befehlen erstellten Indizes könnten einige Einträge nicht berücksichtigt werden, was dazu führen würde, dass bei der Ausführung von SELECT-Anfragen mit den problematischen Indizes bestimmte Zeilen übersprungen werden.

Um festzustellen, ob B-Baum-Indizes beschädigt sind, kann der Befehl „pg_amcheck —heapallindexed Datenbankname“ verwendet werden. Im Falle des Auffindens von Fehlern oder bei der Verwendung der Befehle „CREATE INDEX CONCURRENTLY“ und „REINDEX CONCURRENTLY“ in früheren Releases mit anderen Indextypen (GiST, GIN usw.) wird empfohlen, nach dem Upgrade auf Version 14.4 eine Reindizierung mit dem Tool „reindexdb —all“ oder dem Befehl „REINDEX CONCURRENTLY Indexname“ durchzuführen.

Nur der 14.x Branch ist betroffen, in den Optimierungen aufgenommen wurden, die unter bestimmten Umständen einige Transaktionen im Zusammenhang mit den Operationen „CREATE INDEX CONCURRENTLY“ und „REINDEX CONCURRENTLY“ beim Ausführen von VACUUM ausschließen. Infolgedessen wurden einige in „CONCURRENTLY“ erstellte Indizes nicht durch einige Tupel im Heap-Speicher ergänzt, die während der Indexerstellung aktualisiert oder verkleinert wurden.

Quelle: opennet.ru

60GB SSD 8Gb DDR4