Раньше строки с
serial и identity реплицировались, а значения стоящих за ними sequence — нет. После переключения на подписчика nextval() мог вернуться назад и упереться в уже занятый ключ.🖼️ В PostgreSQL 19 появились публикации
FOR ALL SEQUENCES и команда REFRESH SEQUENCES. Отдельный процесс переносит текущие значения и проверяет совпадение настроек последовательностей.Важная оговорка: синхронизация не непрерывная. Перед миграцией или переключением узлов команду придётся запускать повторно — зато без самодельных скриптов с
setval().#postgresql #logicalreplication #cdc #dataengineering #datamigration #highavailability
@data_engi