Как устранить «неубиваемое» фоновое задание при обновлении базы 1С

Системный администратор 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

При выполнении технического обслуживания или обновлении конфигурации через Конфигуратор (нажатие F7) администраторы часто сталкиваются с ситуацией, когда процесс блокируется активным фоновым заданием — для этого подойдёт инструментарий для управления процессами и мониторинга пользователей. Особенность этого задания заключается в его «живучести»: после принудительного завершения в консоли администрирования кластера оно мгновенно запускается снова. В этой статье мы подробно разберем природу этого явления и изучим все доступные способы решения проблемы без полной перезагрузки физического сервера.

Анализируем симптомы и определяем источник проблемы

Рассмотрим типичную картину: вы установили монопольный режим, включили блокировку регламентных заданий (удобно через панель управления регламентными и фоновыми заданиями) и начала сеансов, завершили все пользовательские соединения. Однако при попытке обновить конфигурацию или расширение система сообщает о наличии активного фонового процесса. Проанализируем параметры этого процесса в консоли:

Выясним причину такого поведения. Это фоновое задание — механизм «Проверки правомерности использования конфигурации». Оно инициируется самой платформой (начиная с версий 8.3.18 и выше) при выполнении критических операций с метаданными. Платформа проверяет наличие лицензий, корректность подписки на ИТС и легальность используемых функций (например, функций КОРП-версии на ПРОФ-лицензиях). Статичное время 04:00 — это зашитая в логику платформы «точка отсчета» для сервисных процедур самодиагностики.

Способ 1: Ожидание и проверка интернет-соединения

Прежде чем переходить к радикальным мерам, попробуем самый простой вариант. Процесс проверки лицензионности обращается к серверам компании 1С через интернет. Если интернет-канал стабилен, процедура обычно занимает от 2 до 10 минут. Если же доступ к ресурсам 1С заблокирован брандмауэром или прокси-сервером, задание может «висеть» часами, пытаясь достучаться до сервера мониторинга.

Рекомендация: Убедитесь, что сервер 1С имеет доступ к портам 80 и 443 для связи с ресурсами интернет-поддержки. Если задание не завершается более 15-20 минут, переходим к следующим шагам.

Способ 2: Настройка интернет-поддержки в режиме «Предприятие»

Поскольку задание инициируется Центром мониторинга, мы можем попробовать отключить его функционал через пользовательский интерфейс. Для этого выполним следующие действия:

  1. Запустим базу в режиме 1С:Предприятие (если это возможно при наличии изменений в расширениях, иначе используем параметры запуска, описанные в Способе 3).
  2. Перейдем в раздел АдминистрированиеИнтернет-поддержка и сервисы.
  3. В блоке «Настройки программы» найдем пункт Центр мониторинга.
  4. Снимем галочку Разрешить отправку статистики.
  5. Если подключена «Интернет-поддержка пользователей», временно нажмем кнопку Отключить.

После этих манипуляций попробуем снова зайти в Конфигуратор и принять изменения. Часто это позволяет платформе «успокоиться» и не запускать проверку при обновлении.

Способ 3: Использование параметров запуска Конфигуратора

Если фоновое задание блокирует обновление даже после отключения настроек в интерфейсе, мы можем применить «силовой» метод запуска Конфигуратора. Платформа позволяет подавлять запуск регламентных и фоновых заданий на уровне сеанса через командную строку.

Для запуска используем следующую команду (через cmd или в свойствах ярлыка):


"C:\Program Files\1cv8\common\1cestart.exe" CONFIG /S"ИмяСервера\ИмяБазы" /AllowExecuteScheduledJobs -Off

Разберем, что делает этот параметр. Ключ /AllowExecuteScheduledJobs -Off запрещает платформе инициировать любые фоновые и регламентные процессы в контексте данного подключения. Это один из самых эффективных способов «проскочить» этап проверки при принятии изменений F7.

Способ 4: Очистка серверного кэша и файлов состояния кластера

Проанализируем ситуацию, когда перезапуск службы Агент сервера 1С:Предприятие не помогает. Это происходит потому, что информация о «незавершенном» системном задании кэшируется в файлах состояния кластера. Пока эти файлы существуют, менеджер кластера (rmngr) будет пытаться восстановить задание сразу после старта службы.

Выполним глубокую очистку по шагам:

  1. Остановим службу 1C:Enterprise 8.3 Server Agent.
  2. Перейдем в каталог данных сервера (по умолчанию это C:\Program Files\1cv8\srvinfo).
  3. Зайдем в папку вашего кластера (например, reg_1541).
  4. Найдем папку snaccfg. Именно здесь хранятся настройки и состояния планировщика.
  5. Важно: Удалим содержимое папок temp и кэш-директории внутри папки конкретной информационной базы.
  6. Запустим службу сервера заново.

После такой очистки «память» системы о зависшем задании будет стерта, и вы сможете беспрепятственно выполнить обновление.

Способ 5: Работа на уровне СУБД (SQL Server)

Иногда бывает так, что в консоли 1С задание выглядит активным, хотя на самом деле это «фантомное» соединение. Реальная блокировка может удерживаться на уровне SQL-сервера. Посмотрим, как это проверить:

  1. Откроем SQL Server Management Studio (SSMS).
  2. Выполним запрос или воспользуемся монитором активности, чтобы найти процессы (SPID), которые обращаются к вашей базе данных.
  3. Если мы видим спящий процесс (status = 'sleeping'), который удерживает блокировки (X-locks) на системных таблицах (например, Config), его необходимо завершить.

Пример команды для удаления процесса в SQL:


KILL [номер_вашего_spid];

Это принудительно разорвет связь между СУБД и сервером приложений, что позволит Конфигуратору захватить монопольный доступ к таблицам метаданных.

Почему это происходит при обновлении расширений?

Заметим, что в современных версиях платформы расширения стали полноценными объектами метаданных. Платформа анализирует их код на предмет обхода ограничений лицензии (например, попытка программно включить функционал КОРП в версии ПРОФ). Поэтому фоновое задание DefUser запускается не только при нажатии F7 в основной конфигурации, но и при обновлении (принятии) конфигурации расширения — здесь пригодится мониторинг журнала регистрации и фоновых заданий. Все вышеперечисленные способы актуальны и для работы с расширениями.

Заключение и рекомендации

Подведем итог. «Неубиваемое» задание — это штатный, хоть и навязчивый механизм платформы. Чтобы минимизировать проблемы с ним в будущем, рекомендуем:

Помните, что перезагрузка всего сервера — это крайняя мера, которой почти всегда можно избежать, понимая механизмы работы регламентных заданий и планировщика задач 1С.

← На главную