В процессе выполнения регламентной процедуры Тестирование и исправление информационных баз (ТиИ) через удаленный рабочий стол (RDP) может произойти сбой связи. После потери интерактивного сеанса клиентское приложение закрывается, но на стороне сервера 1С сеанс продолжается, загружая процессорные мощности. Разберем по шагам, как правильно поступить в такой ситуации, можно ли восстановить подключение и как обезопасить данные от повреждения.
Рассмотрим архитектурные ограничения платформы 1С:Предприятие 8 в клиент-серверном режиме. Интерактивный клиент (тонкий или толстый клиент Конфигуратора) управляет процессом выполнения тестирования. Если RDP-сессия завершилась полностью и клиентское приложение было закрыто операционной системой, повторно привязаться к уже существующему интерактивному окну нельзя.
При этом рабочий процесс rphost.exe на сервере приложений 1С продолжает выполнять запущенную операцию в фоновом режиме. Сервер ожидает завершения текущей транзакции СУБД или ответа от клинета. Из-за этого в консоли администрирования кластера сеанс отображается как активный и продолжает потреблять ресурсы процессора.
Выясним, ведется ли фиксация событий во время тестирования. Платформа 1С записывает результаты проверок и исправления структуры в журнал регистрации. Однако при масштабных операциях следует учитывать следующие нюансы:
.lgd) генерирует огромный поток записей, что может дополнительно замедлять выполнение ТиИ.Проанализируем состояние системы перед тем, как предпринимать радикальные шаги по отключению сеанса. Прежде чем снимать сеанс в консоли администрирования 1С, необходимо проверить, идет ли реальная работа с базой данных на уровне СУБД.
Для диагностики используем штатные средства СУБД:
sys.dm_exec_requests или SQL Server Profiler. Если СУБД выполняет команды реиндексации (ALTER INDEX) или обновления статистики (UPDATE STATISTICS), реструктуризация находится в активной фазе, и процесс прерывать не рекомендуется.pg_stat_activity.Рассмотрим порядок действий, если диагностика показала отсутствие реальной активности или процесс длится недопустимо долго:
В клиент-серверном режиме завершение сеанса через консоль администрирования является безопасным для структуры информационной базы. В отличие от файлового режима (файла 1CD), СУБД автоматически выполнит откат текущей незавершенной транзакции до исходного состоятельного состояния.
Если сеанс не удаляется стандартным способом через консоль 1С, изолируйте рабочий процесс: переведите соответствующий rphost.exe в неактивные процессы или завершите конкретный PID процесса в Диспетчере задач сервера приложений.
Чтобы избежать подобных проблем в будущем, разберем альтернативные варианты проведения тестирования и исправления:
"C:\Program Files\1cv8\8.3.23.1865\bin\1cv8.exe" DESIGNER /S "Server1C\Base1C" /N "Admin" /P "Password" /IBCheckAndRepair -Reindex -CheckLogicalIntegrity -Rebuild
DBCC CHECKDB или командами VACUUM ANALYZE / REINDEX в PostgreSQL). Платформенное ТиИ в таком случае применяется только для проверки логической целостности 1С и пересчета итогов.