powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / deadlock при insert on conflict do update
1 сообщений из 1, страница 1 из 1
deadlock при insert on conflict do update
    #39513266
Alex__kK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На продуктиве в логах постгреса обнаружил следующее (названия процедур и параметров обезличил):
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
2017-08-31 00:18:54 MSK postgres 127.0.0.1 ERROR:  deadlock detected
2017-08-31 00:18:54 MSK postgres 127.0.0.1 DETAIL:  Process 2143 waits for ShareLock on transaction 13051397; blocked by process 2145.
        Process 2145 waits for ShareLock on transaction 13051396; blocked by process 2143.
        Process 2143: Select процедура('параметр');
        Process 2145: Select процедура('JAN_226');
2017-08-31 00:18:54 MSK postgres 127.0.0.1 HINT:  See server log for query details.
2017-08-31 00:18:54 MSK postgres 127.0.0.1 CONTEXT:  while inserting index tuple (1,2) in relation "таблица1"
        SQL statement "Insert into таблица1 (ключевое_поле, поле1)
               (Select ключевое_поле, поле1
                  From таблица2 r
                 Where r.поле2 = параметр)
             on conflict (ключевое_поле)
             do update set поле1 = EXCLUDED.поле1"
        PL/pgSQL function процедура(character varying) line 6 at SQL statement
2017-08-31 00:18:54 MSK postgres 127.0.0.1 STATEMENT:  Select процедура('параметр');



То есть по факту выполнялся один и тот же запрос из двух сессий. На тестовой машине такое воспроизвести у меня не получилось (делал даже в цикле), все вроде отрабатывало.
Может кто-то подсказать, почему так поизошло?
Исходя из сообщения while inserting index tuple (1,2) in relation "таблица1" проблема была при изменении индекса?
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / deadlock при insert on conflict do update
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]