Имя: Пароль:
1C
 
Конфликт блокировок в документообороте при обработке события
0 Momus
 
03.11.21
09:53
ДО 2.1. На событие "создание задачи" создано два дополнительных обработчика: один закрывает задачу определенного типа, другой меняет исполнителя. В момент обработки рег. заданием события возникает конфликт блокировок и автору предмета задачи приходит уведомление об ошибке. Конфликт возникает при блокировке регистра "КешИнформацииОбОбъектах". Ошибка возникает редко и отладчиком ее отловить невозможно. Начало примерно с того момента, как добавлены были два обработчика, при этом ошибка возникает, когда два дополнительных обработчика ничего не изменяют. Не сталкивался ли кто-то с чем-то подобным?
1 Momus
 
03.11.21
10:01
Ошибся с виновным рег. заданием: ошибка возникает при отправке уведомлений. Непонятно тогда как вообще доп. обработчики могут влиять на уведомления, даже если в параллельном фоновом задании что-то меняется
2 Momus
 
03.11.21
10:04
Ошибка возникает также и при блокировке других регистров, например "ДанныеВнутреннихДокументов"
3 Spieluhr
 
03.11.21
10:06
Какой именно конфликт? Ожидание или дедлок?
4 Momus
 
03.11.21
10:09
(3) из 7 зафиксированных ошибок 6 из них дедлок из-за регистра "КешИнформацииОбОбъектах", 1 из-за "ДанныеВнутреннихДокументов".
5 Momus
 
03.11.21
10:10
(4) 1 из 7 из-за времени ожидания
6 Spieluhr
 
03.11.21
11:05
(4) дедлок на стороне сервера 1С или СУБД?
Какой текст исключения?
7 Momus
 
03.11.21
11:30
(6) Ошибка при выполнении обработчика - 'ПриЗаписи'
по причине:
Конфликт блокировок при выполнении транзакции:
Неустранимый конфликт блокировок
{ОбщийМодуль.БизнесПроцессыИЗадачиСервер.Модуль(1668)}:    Блокировка.Заблокировать();
{ОбщийМодуль.БизнесПроцессыИЗадачиСобытия.Модуль(126)}:    БизнесПроцессыИЗадачиСервер.ПриЗаписиЗадачиСервер(Источник);
{ОбщийМодуль.СтартПроцессовСервер.Модуль(179)}:    БизнесПроцесс.Старт();
{ОбщийМодуль.БизнесСобытияВызовСервера.Модуль(779)}:    СтартПроцессовСервер.СтартоватьПроцесс(БизнесПроцесс);
{ОбщийМодуль.БизнесСобытияВызовСервера.Модуль(134)}:    ОбработатьСобытиеАвтоматическийЗапускБизнесПроцессов(Строка, КогоУведомлять);
8 Momus
 
03.11.21
11:31
(7) где Блокировка - блокировка регистра КешИнформацииОбОбъектах с отбором по задаче
9 Spieluhr
 
03.11.21
12:11
(8) это блокировка на стороне сервера 1С, настраивайте ТЖ, ловите TDeadLock
Ошибка? Это не ошибка, это системная функция.