Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
04.02.2020, 09:48
|
|||
---|---|---|---|
Непонятный deadlock |
|||
#18+
Смотрю системный лог. Для каждой из транзакций, участвующих в deadlock указана причина Код: plaintext
В коде используется Код: plsql 1.
. Подозреваю, что эту общую запись вообще может удерживать третья транзакция. Но всё-равно никаких причин для deadlock не вижу. Версия Posrtgresql 10.10. Кто-нибудь может объяснить ситуацию? Может ли это быть связано с тем, что Код: plsql 1.
выполняется в триггерной функции? В коде есть несколько Код: plsql 1.
на разных таблицах, но проблемы только с одной. C Postgresql работаю пол года, но есть 16 лет опыта работы с Oracle и с deadlock в Oracle сталкивался не раз. В Oracle ситуация deadlock соответствует классическому описанию: транзакция 1 владеет ресурсом А и ожидает ресурс Б, транзакция 2 владеет ресурсом Б и ожидает ресурс А. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
04.02.2020, 16:35
|
|||
---|---|---|---|
|
|||
Непонятный deadlock |
|||
#18+
Kr_Yury Смотрю системный лог. Для каждой из транзакций, участвующих в deadlock указана причина Код: plaintext
В коде используется Код: plsql 1.
. Подозреваю, что эту общую запись вообще может удерживать третья транзакция. Но всё-равно никаких причин для deadlock не вижу. Версия Posrtgresql 10.10. Кто-нибудь может объяснить ситуацию? Может ли это быть связано с тем, что Код: plsql 1.
выполняется в триггерной функции? В коде есть несколько Код: plsql 1.
на разных таблицах, но проблемы только с одной. C Postgresql работаю пол года, но есть 16 лет опыта работы с Oracle и с deadlock в Oracle сталкивался не раз. В Oracle ситуация deadlock соответствует классическому описанию: транзакция 1 владеет ресурсом А и ожидает ресурс Б, транзакция 2 владеет ресурсом Б и ожидает ресурс А. В postgresql deadlocks ровно такие же как и во всем мире... а более конкретно по тем обрывкам лога что вы прислали - не понять. Полезно если такое воспроизводимо вылезает - включить полный лог запросов и посмотреть что каждая из 2х транзакций делала и в какой последовательности.... обычно все сразу становится очевидно. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=53&mobile=1&tid=1994840]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
34ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
40ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 133ms |
0 / 0 |