должна использовать одно соединение в моём кейсе.
Кейс - delete+insert на группу таблиц.
Почему-то delete-ы (исполняемые через RawSql) выполняются на pid, отличном от выполнения insert-ов (через генерацию sql ОРМ-кой), что регулярно приводит к дедлоку на стороне postgres (pid delete-ов держит ShareLock, не давая захватить его insert-у).
И delete, и insert происходят (должны происходить) в рамках одной транзакции.
Это возможно только если ОРМ использует два подключения или есть другие сценарии?
pg11 на win10
Если ты реально транзакции открываешь, то оно обязано все в одном соединении делать. Видимо, у тебя что-то в коде не так с управлением транзакциями. Альтернативная версия событий -- баг в Твоём ORM (мало вероятно)
Обсуждают сегодня