Можете ли вы исправить меня, как это работает?Метод помечен аннотацией транзакции.Открыта ли транзакция БД и зафиксирована ли она с помощью весенней транзакции при ее перехвате.Также все связанные ресурсы в БД остаются заблокированными, пока такой метод не завершен.Например, в транзакционном методе я получил несколько объектов из БД, затем несколько раз обновил или удалил некоторые из них.Это все происходит весной транзакции и транзакции БД происходит только в конце транзакционного метода с необходимыми блокировками ???Что если метод зависнет, например, в тупик, заблокированные ресурсы останутся заблокированными для других в БД?Как я вижу, да ..
DB (postgresql) state:
30179 | username | 00:23:05.688157 | IDLE in transaction
6739 | username | 00:23:13.02717 | IDLE in transaction
6748 | username | 00:23:15.266922 | IDLE in transaction
25595 | username | 00:23:22.382349 | IDLE in transaction
25595 | username | 00:23:22.382349 | IDLE in transaction
Все они держали замки (23, 21, 20, 5, 6).Как это могло случиться?У меня не длинные операции.Только тупики: D Но этого не должно быть !!Так как я вижу, что некоторые транзакционные методы зависают, но ресурсы остаются заблокированными, это вызывает остановку других или следующих транзакций, ожидание заблокированных ресурсов и вся система в какой-то момент перестает работать ...