|
Рвется соединение администратором при очистке движений докум
|
|
| greygrouse | Дата: Пн, 05.05.2025, 01:57:44 | Сообщение # 1 |
|
Майор
Группа: Проверенные
Сообщений: 86
Репутация: 41
Статус: Оффлайн
| Платформа 8.3.27.1508 Конфигурация 1С ERP АПК 2.5.17.202 ИР 7.77.1e ОС сервера - Windows Server 2019 Standard Режим совместимости - 8.3.24 Клиент-серверный режим на MS SQL Server 2016
Техническую информацию приложить не могу, т.к. не открывается соответствующий раздел в ИР (описал на форуме)
Порядок воспроизведения: 1. Находил все документы в которых есть организация в инструменте Подбор и обработка объектов (список документов через Анализ метаданных) 2. Отбирал 40 тыс документов 3. Запускал очистку движений документов. 4. Получал ошибку (см. ниже)
В настройках записи и в параметрах запуска обработок указывал как на скриншоте. Пробовал уменьшать менять потоков, кколичество объектов в порции, результата вроде как не дало.
Ошибка через "15:39" фонового задания "Подбор и обработка объектов БД (ИР). Обработка объектов ОчиститьДвиженияДокументов": Соединение с сервером баз данных разорвано администратором Соединение с сервером баз данных разорвано администратором Выполнение оператора KILL не привело к ошибке СУБД {ИнструментыРазработчикаTormozit ОбщийМодуль.ирОбщий.Модуль(32433)}:ВызватьИсключение РезультатОбработки; {ИнструментыРазработчикаTormozit ОбщийМодуль.ирОбщий.Модуль(32345)}:НомераСвободныхПотоков = ОбновитьПотокиОбработкиОбъектовЛкс(СтруктураПотоков); {ИнструментыРазработчикаTormozit ОбщийМодуль.ирОбщий.Модуль(32299)}:ЗапуститьПотокОбработкиПорцииЛкс(СтруктураПотоков); {ИнструментыРазработчикаTormozit Обработка.ирПодборИОбработкаОбъектов.МодульОбъекта(572)}:ирОбщий.ДобавитьОбъектВОчередьМногопоточнойОбработкиЛкс(СтруктураПотоков, ПараметрыОбработкиОбъекта, СтрокиРезультатовОбъекта); {ИнструментыРазработчикаTormozit Обработка.ирПодборИОбработкаОбъектов.МодульОбъекта(508)}:ДобавитьОбъектВОчередьОбработки(ТипТаблицы, СтруктураКлючаОбъектаДоп, СтруктураКлючаОбъекта, СтруктураКлючаСтроки, КопияСтрокОбъекта, ПараметрыОбработки, ТранзакцииРазрешены, {(1)}:Обработка.ВыполнитьГрупповуюОбработку(ПараметрыЗадания) {ИнструментыРазработчикаTormozit ОбщийМодуль.ирОбщий.Модуль(23977)}:Результат = Вычислить("Обработка." + ИмяМетодаОбработки + "(ПараметрыЗадания)");
Соединение с сервером баз данных разорвано администратором Соединение с сервером баз данных разорвано администратором Выполнение оператора KILL не привело к ошибке СУБД {ИнструментыРазработчикаTormozit ОбщийМодуль.ирОбщий.Модуль(32433)}:ВызватьИсключение РезультатОбработки; {ИнструментыРазработчикаTormozit ОбщийМодуль.ирОбщий.Модуль(32345)}:НомераСвободныхПотоков = ОбновитьПотокиОбработкиОбъектовЛкс(СтруктураПотоков); {ИнструментыРазработчикаTormozit ОбщийМодуль.ирОбщий.Модуль(32299)}:ЗапуститьПотокОбработкиПорцииЛкс(СтруктураПотоков); {ИнструментыРазработчикаTormozit Обработка.ирПодборИОбработкаОбъектов.МодульОбъекта(572)}:ирОбщий.ДобавитьОбъектВОчередьМногопоточнойОбработкиЛкс(СтруктураПотоков, ПараметрыОбработкиОбъекта, СтрокиРезультатовОбъекта); {ИнструментыРазработчикаTormozit Обработка.ирПодборИОбработкаОбъектов.МодульОбъекта(508)}:ДобавитьОбъектВОчередьОбработки(ТипТаблицы, СтруктураКлючаОбъектаДоп, СтруктураКлючаОбъекта, СтруктураКлючаСтроки, КопияСтрокОбъекта, ПараметрыОбработки, ТранзакцииРазрешены, {(1)}:Обработка.ВыполнитьГрупповуюОбработку(ПараметрыЗадания) {ИнструментыРазработчикаTormozit ОбщийМодуль.ирОбщий.Модуль(23977)}:Результат = Вычислить("Обработка." + ИмяМетодаОбработки + "(ПараметрыЗадания)");
[ОшибкаВоВремяВыполненияВстроенногоЯзыка, ИсключениеВызванноеИзВстроенногоЯзыка]
|
| |
| |
| tormozit | Дата: Пн, 05.05.2025, 07:04:35 | Сообщение # 2 |
|
Генералиссимус
Группа: Администраторы
Сообщений: 7195
Репутация: 188
Статус: Оффлайн
| Цитата greygrouse (  ) Пробовал уменьшать менять потоков Количество потоков = 1 пробовал?
|
| |
| |
| greygrouse | Дата: Пн, 05.05.2025, 21:23:02 | Сообщение # 3 |
|
Майор
Группа: Проверенные
Сообщений: 86
Репутация: 41
Статус: Оффлайн
| Да, с количеством потоков 1 завершается без проблем. Но занимает о-о-очень много времени...
|
| |
| |
| tormozit | Дата: Пн, 05.05.2025, 23:15:07 | Сообщение # 4 |
|
Генералиссимус
Группа: Администраторы
Сообщений: 7195
Репутация: 188
Статус: Оффлайн
| Попробуй включить техножурнал на сбор TDEADLOCK, EXCP, EXCPCNTX или ЦУП и смотреть взаимоблокировки. Пробуй закомментировать блоки кода в методе ОбработкаОбъект.ирПодборИОбработкаОбъектов.ОбработатьЭлементыОбъекта
Код Если ТипТаблицы = "Внешняя" Тогда ВнешниеИсточникиДанных[ОбъектМДОбъекта.Родитель().Имя].НачатьТранзакцию(); Иначе НачатьТранзакцию(); КонецЕсли;
Код Если ТипТаблицы = "Внешняя" Тогда ВнешниеИсточникиДанных[ОбъектМДОбъекта.Родитель().Имя].ЗафиксироватьТранзакцию(); Иначе ЗафиксироватьТранзакцию(); КонецЕсли;
Код Если ТипТаблицы = "Внешняя" Тогда ВнешниеИсточникиДанных[ОбъектМДОбъекта.Родитель().Имя].ОтменитьТранзакцию(); Иначе ОтменитьТранзакцию(); КонецЕсли;
|
| |
| |
| tormozit | Дата: Пн, 05.05.2025, 23:19:45 | Сообщение # 5 |
|
Генералиссимус
Группа: Администраторы
Сообщений: 7195
Репутация: 188
Статус: Оффлайн
| Более правильно блокировки накладывает обработка ОтменитьПроведениеДокументов. Попробуй ее.
|
| |
| |
| tormozit | Дата: Вт, 06.05.2025, 07:57:37 | Сообщение # 6 |
|
Генералиссимус
Группа: Администраторы
Сообщений: 7195
Репутация: 188
Статус: Оффлайн
| Создал задачу для отключения транзакции этому виду обработки https://www.hostedredmine.com/issues/1004624
|
| |
| |
| greygrouse | Дата: Вт, 06.05.2025, 10:06:12 | Сообщение # 7 |
|
Майор
Группа: Проверенные
Сообщений: 86
Репутация: 41
Статус: Оффлайн
| Цитата tormozit (  ) Более правильно блокировки накладывает обработка ОтменитьПроведениеДокументов. Попробуй ее. Попробовал. Ошибка появляется как и с очисткой движений если запускать в несколько потоков. Количество объектов в порции не влияет на появление ошибки.Добавлено (06.05.2025, 12:32) ---------------------------------------------
Цитата tormozit (  ) Пробуй закомментировать блоки кода в методе ОбработкаОбъект.ирПодборИОбработкаОбъектов.ОбработатьЭлементыОбъекта Закомментировал. Теперь при многопоточным выполнении ошибок не выдает. По ощущениям в многопотоке стало помедленнее работать, но всеравно быстрее одного потока. Конкретные цифры при тестировании получу и допишу сюда.
|
| |
| |
| tormozit | Дата: Пн, 12.05.2025, 08:32:15 | Сообщение # 8 |
|
Генералиссимус
Группа: Администраторы
Сообщений: 7195
Репутация: 188
Статус: Оффлайн
| Сделано в 7.78
|
| |
| |