Запись из n8n в базу: транзакции и повторы
Промпт для Claude: настроить запись из n8n в PostgreSQL — вставка с обновлением при конфликте, пачки и поведение при обрыве.
Пример результата
Пробовал на приёме событий внешнего сервиса, около тысячи в сутки, PostgreSQL рядом с n8n. Что вышло: операция со вставкой и обновлением при конфликте по уникальному индексу решила главную проблему — повторные события перестали ронять запись. До этого воркфлоу падал на каждом дубле. Второй пункт дал внятный критерий: нагрузку кладём одним полем, потому что структура у разных типов событий разная, а поиск идёт по типу и времени, которые вынесены в отдельные колонки. Третий пункт неприятно удивил: пачка пишется по элементам, и при ошибке на тридцатой первые двадцать девять остаются. Добавил проверку из четвёртого пункта — запрос на разрывы в последовательности, гоняю раз в сутки. Совет: пятый пункт про права не пропускайте. У меня пользователь базы имел права на удаление, которые для этой задачи не нужны вовсе.