|
Постоянные advisory locks
|
|||
---|---|---|---|
#18+
Добый день, очень мало опыта с постгрес, не могу разобраться. postgresql 9.6 на windows, там же сервер 1с Периодически вылетает ошибка в 1с: Конфликт блокировок при выполнении транзакции: 55P03 ERROR: canceling statement due to lock timeout В логе в это время такое сообщение: STATEMENT: SET STATEMENT_TIMEOUT TO 20000; SELECT pg_advisory_xact_lock((SELECT oid::bigint FROM pg_class WHERE relname = 'различные имена талбиц')); SET STATEMENT_TIMEOUT TO DEFAULT; Причем бываю даже дедлоки из 2ух подобных запросов. Подскажите куда копать пожалуйста. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2020, 09:50 |
|
Постоянные advisory locks
|
|||
---|---|---|---|
#18+
авторразличные имена талбиц Ну и почему же тогда не может быть дедлоков? Транзакция 1 берёт лок на foo Транзакция 2 берёт лок на bar Транзакция 1 хочет bar Транзакция 2 хочет foo Классический дедлок и есть. В чём вопрос? А если в ожидании блокировки поспали 20 секунд - значит не дождались окончания удерживающей эту блокировку транзакции (либо своей очереди на получение этой блокировки) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2020, 11:14 |
|
Постоянные advisory locks
|
|||
---|---|---|---|
#18+
Melkij, Я знаю что такое дедлок, спасибо. Вопрос в том как избавиться именно от этих advisory_locks ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2020, 11:57 |
|
Постоянные advisory locks
|
|||
---|---|---|---|
#18+
tratata74 Melkij, Я знаю что такое дедлок, спасибо. Вопрос в том как избавиться именно от этих advisory_locks Так это вопрос не по базе а по 1С - с 1C и общайтесь. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2020, 12:56 |
|
Постоянные advisory locks
|
|||
---|---|---|---|
#18+
Maxim Boguk tratata74 Melkij, Я знаю что такое дедлок, спасибо. Вопрос в том как избавиться именно от этих advisory_locks Так это вопрос не по базе а по 1С - с 1C и общайтесь. Таки да. Постоянные блокировки, а тем более взаимные блокировки как правило свидетельство косяков приложения. В базе ничего особо не потюнишь. Разве что таймаут поставить побольше(но куда уж больше 20 секунд) может будут проскакивать обычные локи(дедлоки не будут). Даешь отдельную ветку по одноце! ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2020, 13:37 |
|
|
start [/forum/moderation_log.php?user_name=derikkk]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
38ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
others: | 680ms |
total: | 840ms |
0 / 0 |