В процессе эксплуатации серверной версии 1С:Предприятие специалисты часто сталкиваются с внезапным завершением работы рабочего процесса rphost. Особенно критично это проявляется, когда работа в Конфигураторе или выполнение поисковых запросов приводит к «вылетанию» всех активных пользователей. Проанализируем типичную ситуацию: после обновления SQL-сервера или платформы 1С процесс rphost начинает перезагружаться каждые несколько минут, а в журнале событий Windows фиксируется ошибка приложения dllhost.exe со сбойным модулем core83.dll и кодом исключения 0xc0000005.
Код исключения 0xc0000005 однозначно указывает на Access Violation — попытку процесса обратиться к адресу памяти, к которому у него нет прав доступа, или который не существует. В контексте 1С это чаще всего происходит в модуле core83.dll. Рассмотрим, почему это случается именно при работе в Конфигураторе или при использовании поиска:
rphost ограничен адресным пространством в 2 ГБ (в редких случаях до 3.5 ГБ). Даже если диспетчер задач показывает потребление в 800-900 МБ, из-за высокой фрагментации памяти система может не найти непрерывный блок данных для выполнения тяжелой операции.rphost мгновенно исчерпывает лимиты и аварийно завершается.dllhost.exe часто указывает на проблемы при вызове COM-объектов или внешних библиотек, которые 1С использует для служебных нужд.Прежде чем приступать к радикальным мерам, выясним, является ли полнотекстовый поиск виновником падений. Для этого проанализируем поведение системы: если rphost «падает» именно в моменты попыток поиска в Конфигураторе (поиск по метаданным, поиск в текстах) или при обращении пользователей к глобальному поиску в режиме предприятия, значит, проблема в индексах.
Попробуем временно отключить полнотекстовый поиск через консоль администрирования или программно:
ПолнотекстовыйПоиск.УстановитьИспользование(Ложь);
Если после отключения ПП падения прекратились, мы нашли источник проблемы. Однако работать без поиска неудобно, поэтому перейдем к методам восстановления его работоспособности.
Стандартная процедура «Очистить индекс» через обработку «Управление полнотекстовым поиском» не всегда эффективна, так как она может не удалить физически поврежденные файлы на диске. Проведем «жесткую» очистку вручную. Разберем этот процесс по шагам:
C:\Program Files\1cv8\srvinfo или C:\Program Files (x86)\1cv8\srvinfo).1cv8ftxt. Именно здесь хранятся файлы индексов.1cv8ftxt.Если ваша база данных активно растет, 32-битная платформа 1С на 64-битной операционной системе Windows — это всегда «бомба замедленного действия». Как только объем обрабатываемых данных при поиске или обновлении конфигурации превышает возможности адресации 32-битного процесса, вы будете получать 0xc0000005 в core83.dll.
Рассмотрим преимущества перехода на 64-битный сервер 1С:
rphost сможет использовать практически весь объем доступной оперативной памяти сервера.Проанализируем системные настройки сервера. Ошибка 0xc0000005 часто провоцируется механизмом DEP (Data Execution Prevention). Если DEP считает, что core83.dll пытается выполнить код из неразрешенного участка памяти, он блокирует процесс.
Выполним настройку DEP:
ragent.exe, rmngr.exe и rphost.exe из папки bin вашей платформы.Также крайне важно добавить папку srvinfo в исключения антивирусного сканера. Если антивирус блокирует файл индекса в момент, когда rphost пытается в него записать данные, происходит критический сбой потока и аварийное завершение процесса.
Некоторые релизы 1С, такие как 8.3.16.1148, имели подтвержденные проблемы с утечками памяти в механизмах ПП и фоновых заданий. Если очистка индексов и настройка DEP не помогают, проанализируем возможность обновления платформы. Рекомендуется переходить на более современные и стабильные ветки (например, последние сборки 8.3.18, 8.3.21 или выше), где ошибки взаимодействия с dllhost.exe были исправлены разработчиками.
Важный нюанс: при обновлении платформы не забывайте также обновлять соответствующие компоненты доступа к SQL-серверу (Native Client), так как старые драйверы могут конфликтовать с новыми механизмами обращения к данным в 1С.
Подводя итог, можно сказать, что падение rphost в конфигураторе — это чаще всего следствие нехватки памяти 32-битного процесса при работе с разросшимся индексом полнотекстового поиска. Совместное использование ручной очистки каталога 1cv8ftxt, настройки исключений DEP и, в идеале, перехода на 64-битную версию сервера позволяет полностью устранить данную проблему и обеспечить стабильную работу системы.