Если в запросе django в маршрутизаторе read database произошла операционная ошибка, повторно выполните запрос на write database

Когда запрос на чтение из read_db() терпит неудачу из-за следующей ошибки

ERROR: cancelling statement due to conflict with recovery
Detail: User query might have needed to see row versions that must be removed

как поймать ошибку и повторно выполнить тот же запрос на записи в БД.

Обратите внимание, что это проблема не Django, а PostgreSQL.

Двумя решениями являются:

  1. hot_standby_feedback OR
  2. max_standby_archive_delay

См. документацию: https://www.postgresql.org/docs/current/runtime-config-replication.html

Вернуться на верх