Имя: Пароль:
1C
1С v8
Рег.задание из разных сеансов
0 zippygrill
 
23.04.24
20:43
Привет

Предистория

Была когда-то и есть в ДО ФЗ.ОбработкаПроизошедшихБизнесСобытий. Со временем кол предметов и событий которые должны отрабатывать стремительно увеличилось и решено было выделить это рег.задание на отдельный сервер 1С.

Проблема
Заключается в дублей бизнес-процессов по предмету. ЖР показыват что один БП был создан используя номер сеанса 1111, а второй бизнес-процесс был создан используя номер сеанса 2222. Сервер этих сеансов один и тот же, время создания бизнес-процессов и записи в ЖР в пределах 1 секунды. Происходят такие сбои раз в квартал за последние 6 месяцев. Как было до этих 6 месяцев - не знаю, тк не работал.
РЗ в конфигураторе без ключа, предопределенное.

Было и есть предположение что выделенное на отдельный сервер РЗ дублируется, но, непосредственный специалист который разделил места выполнения РЗ оч сомневается в этом.

Теоретически указав Ключ рег.задания может помочь в этом деле?
Возможно есть какие-то мысли как локализовать происхождение этой проблемы..
1 zippygrill
 
25.04.24
09:50
В дочерней процедуре ОбработатьСобытиеАвтоматическийЗапускБизнесПроцессов() есть проверка на существующий б-п.
Можно предположить что действительно при одновременной обработки одного и того же Предмета из разных сеансов, б-п по предмету не создан и не стартован.

Запрос = Новый Запрос;
				Запрос.Текст = "ВЫБРАТЬ
				|	СправочникВнутренниеДокументы.Ссылка КАК Предмет
				|ПОМЕСТИТЬ втПредметы
				|ИЗ
				|	Справочник.ВнутренниеДокументы КАК СправочникВнутренниеДокументы
				|ГДЕ
				|	СправочникВнутренниеДокументы.Ссылка = &Предмет
				|;
				|
				|////////////////////////////////////////////////////////////////////////////////
				|ВЫБРАТЬ
				|	КомплексныйПроцессПредметы.Ссылка КАК Ссылка
				|ИЗ
				|	БизнесПроцесс.КомплексныйПроцесс.Предметы КАК КомплексныйПроцессПредметы
				|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ втПредметы КАК втПредметы
				|		ПО КомплексныйПроцессПредметы.Предмет = втПредметы.Предмет
				|ГДЕ
				|	КомплексныйПроцессПредметы.Ссылка.Завершен = ЛОЖЬ
				|	И КомплексныйПроцессПредметы.Ссылка.ПометкаУдаления = ЛОЖЬ
				|	И КомплексныйПроцессПредметы.Ссылка.Стартован
				|	И КомплексныйПроцессПредметы.Ссылка.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияБизнесПроцессов.Активен)
				|	И КомплексныйПроцессПредметы.Ссылка.Шаблон = &Шаблон";

				Запрос.УстановитьПараметр("Предмет", Событие.Источник);
				Запрос.УстановитьПараметр("Шаблон", СтрокаТаблицы.ШаблонБизнесПроцесса);
2 zippygrill
 
23.04.24
21:05
Теоретических решений на текущий момент:
*указать ключ РЗ
*наложить блокировку на таблицу бизнесПроцессы.КомплексныйПроцесс по списку Предметов. Вопрос в том, где лучше исключительную блокировку указать в коде ( по каждому предмету или по списку предметов. Тк в список произошедших Бп могут быть много предметов, мы разделили обработку записей порциями. Те список предметов есть.
3 Мультук
 
гуру
23.04.24
21:06
(0)

>> решено было выделить это рег.задание на отдельный сервер 1С.

У вас файловая база ?

или у вас серверная база и кластер?

Тогда пожалуйста объясните (если не сложно) как вы заставляете определенное рег.задание выполняться на
определенном сервере кластера.
4 zippygrill
 
23.04.24
21:24
(3) клиент-сервер, кластер.
А организовано это через раздел "Требования назначения функциональности" с указанием списка BackgroundJob.ScheduledJob.xxxxxxxx у вспомогательного сервера 1С
5 zippygrill
 
24.04.24
10:27
апну
6 MaximSh
 
25.04.24
10:07
(0) Конечно должно быть одно в единицу времени. Ключ поставить и проверить, он для этого и предназначен. Но причина не в его отсутствии. Блокировка усугубит проблему.
7 zippygrill
 
25.04.24
15:56
(6) Ключ любой генерируемый через Новый УникальныйИдентификатор?
8 MaximSh
 
25.04.24
16:06
(7) любая строка уникальная в пределах регл заданий
9 zippygrill
 
13.05.24
11:49
А разве в Предприятии для фон задания не должен быть указан Ключ что в конф?
10 Hmster
 
13.05.24
16:56
(9) не путайте регламентные задания и фоновые задания, вторые могут быть без первого и вообще жить от него независимо
11 zippygrill
 
14.05.24
10:08
(10) ну для РЗ также нет ключа