PostgreSQL 14.4 yangilanishi indeksdagi buzilishlarni tuzatish bilan

PostgreSQL DBMS 14.4 tuzatuvchi relizi yaratildi, bu ma'lum sharoitlarda "INDEX CREATE CONCURRENTLY" va "REINDEX CONCURRENTLY" buyruqlarini bajarishda indekslardagi ko'rinmas ma'lumotlarning buzilishiga olib keladigan jiddiy muammoni bartaraf etadi. Belgilangan buyruqlar yordamida yaratilgan indekslarda ba'zi yozuvlar hisobga olinmasligi mumkin, bu esa muammoli indekslarni o'z ichiga olgan SELECT so'rovlarini bajarishda yo'qolgan qatorlarga olib keladi.

B-daraxt indekslari buzilganligini aniqlash uchun siz “pg_amcheck –heapallindexed db_name” buyrug'idan foydalanishingiz mumkin. Agar xatolar aniqlansa yoki boshqa turdagi indekslar (GiST, GIN va h.k.) bilan oldingi nashrlarda “INDEX CREATE CONCURRENTLY” va “REINDEX CONCURRENTLY” buyruqlari ishlatilgan bo'lsa, 14.4 versiyasiga yangilangandan so'ng, reindekslashni amalga oshirish tavsiya etiladi. "reindexdb -all" yordam dasturi yoki "REINDEX CONCURRENTLY index_name" buyrug'i.

Muammo faqat 14.x filialiga ta'sir qiladi, u VAKUUM operatsiyasini amalga oshirishda "INDEX CREATE CONCURRENTLY" va "REINDEX CONCURRENTLY" bajarilishi bilan bog'liq ba'zi operatsiyalarni istisno qiladigan optimallashtirishlarni o'z ichiga oladi. Ushbu optimallashtirishlar natijasida bir vaqtning o'zida bir vaqtning o'zida yaratilgan indekslar yig'ma xotiradagi indeks yaratish vaqtida yangilangan yoki qisqartirilgan ba'zi kortejlarni o'z ichiga olmadi.

Manba: opennet.ru

a Izoh qo'shish