Имя: Пароль:
1C
1С v8
Проблема с выполнением регламентного задания УТ 11
0 deman_ru
 
23.01.17
23:12
Всем привет!
Конфигурация: УТ 11
База на SQL сервере.
Создал в регламентное задание. По расписанию, оно запускается, читает файл XML (при помощи XDTO), в котором порядка 75000 строк с номенклатурой, и формирует документ установки цен, записывает его и проводит.
Тестировал задание в тестовой базе пару дней, на третий день оно перестало работать, причем зависает программа полностью, помогает только перезапуск службы: Агент сервера 1С. Зашел в отладчик, проходит где то 1000 строк и все, дальше не выполняется, заметил что зависает когда начинает выполняться еще какое то регламентное задание. В консоли администрирования серверов, куча блокировок.
Что не так, из-за чего такое может быть?
1 papiruso
 
24.01.17
09:13
может то другое задание тоже чего-то пытается делать с этим XML файлом, в итоге конфликт доступа к файлу
2 deman_ru
 
24.01.17
09:18
(0) В базе периодически запускаются регламентные задания, вот некоторые из них:
- Выполнение отложенных движений по расчетам с клиентами\поставщиками;
- Интеграция с 1С:Документооборотом - Выполнить обмен данными;
- Обновление индекса ППД;
- Выполнение отложенных движений по расчетам с клиентами\поставщиками;
- Слияние индекса ППД.
Что было сделано:
1. В Microsoft sql management studio сделал сжатие файла логов - не помогло;
2. В Администрирование серверов 1С Предприятия, удалил и подключил заново базу.
Сейчас регламентное задание запускается и отрабатывает, зависаний нет. Но не понятно, на долго ли это.
Что происходит когда удаляешь и подключаешь базу заново? Может можно сделать какое то задание, которое периодически будет выполняться с базой?
3 shamannk
 
24.01.17
09:41
Память опр. кончилась. Базу отключил память освободилась.
4 PCcomCat
 
24.01.17
09:42
У меня в файловой регламентные падают периодически. При этом пишет, что завершено с ошибкой, а ошибка не описывается.  Бывает падает так, что всплывает ошибка функциональная опция ... не обнаружена. ТиИ не дает ошибок. После перезапуска опять отрабатывает. И до очередного падения.
5 shamannk
 
24.01.17
09:44
Лучше рег. задания настроить чтоб не пересекались, и ребут сервера раз в сутки.
6 PCcomCat
 
24.01.17
09:46
"и ребут сервера раз в сутки" - жестоко...
7 deman_ru
 
24.01.17
09:48
(3) на сервере 32Гб памяти, в момент когда все зависало, свободно было где то половина, неужели из-за памяти?
8 shamannk
 
24.01.17
09:52
(7) Это как настроен сервер и sql. может там тупо запрещено больше брать.
9 shamannk
 
24.01.17
09:52
(6) Зато работает на 300 активных. Таких траблов нет
10 DrShad
 
24.01.17
09:56
(8) +1

к гадалке не ходи память кончается
11 deman_ru
 
24.01.17
09:59
(10) а как ее очищать без удаления базы из консоли?
12 DrShad
 
24.01.17
10:06
(11) ты для начала глянь сколько памяти разрешено скулю жрать и если действительно его ограничили в аппетитах, то тут только править твое рег задание, чтобы столько не ело
13 DrShad
 
24.01.17
10:07
например, грузить не все 75К строк а по 1К в одном задании и запускать рег задание можно столько раз сколь угодно одновременно
14 DrShad
 
24.01.17
10:09
у нас под 50 рег заданий постоянно крутятся и ни разу не падали
15 polosov
 
24.01.17
10:12
(0) Да код у тебя кривой. Инфа 100%.
16 DrShad
 
24.01.17
10:16
(15) +1
17 mxs089
 
24.01.17
10:23
(0) может в вечный цикл уходишь?
18 deman_ru
 
24.01.17
10:28
(12) настройки памяти: http://prntscr.com/dzl0z0
19 deman_ru
 
24.01.17
10:35
(16) Код собственно не очень то и мудреный. Есть файл XML, читаем его при помощи фабрики XDTO, далее в цикле обходим все 75К строк. По условию отбираем нужную нам номенклатуру с ценами, пишем это в новый документ установки цен. После того как цикл завершен, записываем документ. Вечных циклов нет. Я ставил расписание на задание, оно у меня выполнялось 3 раза в день, два дня работало, на третий все застопорилось и при запуске вешает работу со всей базой. Причем вообще на сервере не одна база, проблемы начинаются только с той, где работало регзадание. В консоли Администрирования отключил базу, подключил заново. Все заработало.
Так вот я не могу понять, что произошло когда я отключил базу, что очистилось, память/логи/кэш?

А каким образом можно по 5К строк обрабатывать? Пока что никак не могу представить механизм
20 mxs089
 
24.01.17
10:52
виснет при чтении одного файла на разных строках, на одной?
21 deman_ru
 
24.01.17
11:03
(20) на разных, обрабатывает около 1000 строк и все...
но опять же повторю, отключаю/подключаю базу в консоли администрирования, все работает... ну до поры до времени)
22 mxs089
 
24.01.17
11:11
виснет на какой операции? зачем переподключать в консоли, если открыть новый сеанс - висит?
23 deman_ru
 
24.01.17
11:38
(22) да одной из итераций цикла зависает.
зависает вообще все, с базой сделать ничего нельзя, если закрыть и заходить заново висит окно запуска, даже нет окна ввода пользователя и пароля, в консоли куча сеснсов регламентных заданий и блокировок, помогает только перезапуск агента сервера 1с, после этого я могу войти в базу, но при запуске рег задания снова все виснет. Если базу переподключить, оно снова начинает работать