Логическая репликация Postgres: таблица db растет бесконечно

#postgresql #datatable #replication

#postgresql #datatable #репликация

Вопрос:

У меня есть таблица postgres (размером 300 Мб), которая логически реплицируется на другой сервер. Пока я не внес некоторые изменения, все было отлично. Затем master начал расти (до 2,5 Гб со скоростью 15 Мб примерно за 5 минут). Я попытался настроить параметры WAL и выполнить очистку WAL, но это не помогло.

Что я делал до того, как была обнаружена эта проблема:

  • Много раз перестраивал материализованный вид, зависящий от главной таблицы (и это операция, требующая больших затрат процессора)

  • Добавлен новый столбец в главной таблице и подчиненной таблице

  • Добавлено правило для вставок (скопируйте значение из jsonfield в charfield)

Что могло вызвать эту проблему?

Комментарии:

1. Репликация все еще работает? Посмотрите на резервные журналы. Возможно, вы нарушили репликацию, и WAL должен быть сохранен до тех пор, пока вы это не исправите.

Ответ №1:

Я все еще не уверен, что вызвало проблему, но, вероятно, это было добавление нового столбца. После восстановления резервной копии и повторного создания публикации и подписки все работало довольно хорошо.