Что будет, если прекратить работу с соединением к postgres, оставив при этом транзакцию открытой?

Перевожу статью об обработке ошибок в Node.js. В статье приведён пример работы с базой данных postgres.

Так как я не имею опыта работы с postgres, то возникли сомнения на счет того, что я правильно его понял. Прошу разъяснить следующий абзац:
Postgres connection may be left inside an open transaction. This causes postgres to "hang on" to old versions of rows in the table because they may be visible to that transaction. This can stay open for weeks, resulting in a table whose effective size grows without bound — causing subsequent queries to slow down by orders of magnitude — from a few milliseconds to a minute.
  • Вопрос задан
  • 2611 просмотров
Решения вопроса 1
smagen
@smagen
Руководитель разработки Postgres Professional
Это значит, что старые версии строк, которые видны этой транзакции, не смогут быть очищены командой VACUUM. При этом база будет всё больше "замусориваться", вследствие чего выполнение запросов - замедляться.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы