PostgreSQL 18: ключевые улучшения и нововведения

PostgreSQL 18 включает значительные улучшения в логической репликации, теперь отслеживая и сообщая о конфликтах. Появились новые счетчики конфликтов в pg_stat_subscription_stats и подробные сообщения в журнале сервера, что позволяет администраторам более эффективно мониторить и управлять репликацией.
PostgreSQL 18: ключевые улучшения и нововведения
Изображение носит иллюстративный характер

Улучшения планировщика запросов включают удаление запретительной константы для отключенных путей выполнения. Теперь параметр EXPLAIN (settings) четко показывает, когда планировщик был вынужден использовать запрещенный путь, а управление памятью для временного хранения строк стало более эффективным за счет использования Generation Memory Context. В результате EXPLAIN (analyze) показывает тип (Memory или Disk) и максимальный объем использованной памяти.

Ускорения в PostgreSQL 18 коснулись и производительности: оптимизировано хеширование соединений, преобразование JSON в текст с использованием SIMD, а также операции умножения и деления для типа numeric. Сканирование индексов в обратном направлении теперь использует минимальное количество буферов, а утилита pg_upgrade получила асинхронное выполнение задач, особенно полезное для кластеров с большим количеством баз данных.

Добавление команд ANALYZE ONLY и VACUUM ONLY позволяет собирать статистику и выполнять очистку только для секционированных и родительских таблиц, без обработки их дочерних элементов. В дополнение, улучшена точность статистики контрольной точки, команда SET теперь нормализуется в pg_stat_statements, расширены возможности функции postgres_fdw, и добавлены функции crc32 и crc32c. Клиент-серверный протокол теперь информирует о search_path, а psql поддерживает именованные подготовленные операторы. Наконец, pg_verifybackup теперь проверяет целостность резервных копий в формате tar.


Новое на сайте

20854Как дешёвые Android-смартфоны превращаются в чужие прокси? 20853В Индии имя звонящего появится на экране вместе с номером 20852Как проверить готовность команды к звонку с клонированным голосом? 20851Уязвимости MarkLogic: делегированные права могли открыть путь к администраторскому... 20850Как GitHub закрыл лазейку, угрожавшую тысячам npm-пакетов? 20849Hirudo подменяет банковские приложения, чтобы обойти их защиту 20848Как Vghost превратил старую ошибку Linux в путь к root? 20847Уязвимости в PAN-OS и Cisco Secure Email Gateway уже используют атакующие 20846Как уязвимость GitLab могла открыть сервер для чужого кода? 20845Уязвимость SAP Cloud SDK могла отправить OAuth2-секреты злоумышленнику 20844Уязвимость в Nextcloud открыла путь к веб-оболочкам на серверах 20843Смогут ли малые ИИ-модели превратить бытовую технику в ботнет? 20842Пять уязвимостей NGINX: кому грозит риск и как закрыть его 20841Тайный диктофон в OpenAI: что утверждают следователи 20840Как проверять уязвимость входа, не заходя дальше дозволенного?
Ссылка