Многие администраторы и специалисты по 1С сталкиваются с ситуацией, когда после обновления платформы (особенно на версии 8.3.24, 8.3.25 и 8.3.26) на сервере начинает стремительно исчезать свободное место. При анализе дискового пространства выясняется, что виновником является папка C:\Program Files\1cv8\srvinfo\reg_1541 (или аналогичная по пути установки службы сервера 1С), а внутри неё — гигантский файл tableChanges.dat, который может достигать размеров в сотни гигабайт или даже терабайт.
В этой статье мы подробно разберем причины этого явления, проанализируем механизм возникновения проблемы и рассмотрим пошаговые методы её устранения.
Прежде чем приступать к "лечению", давайте убедимся, что мы имеем дело именно с этой проблемой. Основные симптомы выглядят следующим образом:
1Cv8FTxt) находится файл tableChanges.dat аномально большого размера.В чем причина?
Файл tableChanges.dat относится к механизму Полнотекстового поиска (ППД) платформы 1С:Предприятие. Этот механизм использует библиотеку Lucene для индексации данных, чтобы пользователи могли быстро искать информацию (например, номенклатуру или контрагентов) по строке поиска.
В нормальном режиме работы в этот файл записываются изменения данных, которые ожидают индексации. Регламентное задание должно обрабатывать этот файл, вносить данные в основной индекс и очищать tableChanges.dat.
Однако в версиях платформы 8.3.24, 8.3.25 и ранних 8.3.26 была обнаружена ошибка (зарегистрирована в баг-трекере 1С). Суть ошибки заключается в сбое процесса слияния индексов (merge). Если процесс индексации "спотыкается" (например, из-за блокировок, антивируса или внутренней ошибки структуры), файл изменений не очищается, а новые данные продолжают в него дописываться. Это создает эффект "снежного кома".
Этот метод позволяет сохранить функционал полнотекстового поиска, исправив ошибку накопления данных. Давайте выполним действия по порядку.
Шаг 1: Остановка службы сервера 1С
Поскольку файл tableChanges.dat занят процессом rphost или rmngr, удалить его просто так не получится. Если файл занял все свободное место, сервер может работать нестабильно.
Остановите службу Агента сервера 1С:Предприятие через оснастку "Службы" (Services.msc) или командную строку:
net stop "1C:Enterprise 8.3 Server Agent"
Примечание: Имя службы может отличаться в зависимости от версии и разрядности платформы (например, 1C:Enterprise 8.3 Server Agent (x86-64)).
Шаг 2: Удаление проблемных файлов
Перейдите в папку кластера srvinfo. Вам нужно найти папку конкретной базы данных. Обычно папки имеют названия в виде GUID (например, 83296068-18e0-4786-b489-01589133a82f). Выявить список баз из папки REG_XXXX и сопоставить их с GUID поможет специальная обработка.
Внутри папки базы найдите каталог 1Cv8FTxt. Именно в нем лежат файлы индекса полнотекстового поиска.
1Cv8FTxt (или сам файл tableChanges.dat, если он огромный).
del /f /q "C:\Путь\К\Файлу\tableChanges.dat"
Шаг 3: Запуск службы и пересоздание индекса
Все функции (или Функции для технического специалиста) -> Стандартные -> Управление полнотекстовым поиском.Администрирование -> Общие настройки -> Поиск данных -> Настроить.После этого запустится фоновое задание по перестроению индекса. В это время нагрузка на сервер может возрасти, но файл tableChanges.dat больше не должен расти бесконтрольно.
Если функционал "умного" поиска (с учетом морфологии, синонимов и нечеткого совпадения) вашим пользователям не критичен, или если проблема повторяется даже после очистки, имеет смысл отключить этот механизм. Это также снизит нагрузку на дисковую подсистему и процессор.
Как это повлияет на поиск?
При отключенном полнотекстовом поиске возможность искать данные в списках (справочниках, журналах документов) не пропадет. Поиск будет выполняться средствами СУБД (SQL) через оператор LIKE. Это означает:
Порядок действий для отключения:
1. Зайдите в базу в режиме 1С:Предприятие.
2. Перейдите в настройки поиска:
НСИ и Администрирование -> Общие настройки -> Поиск данных.3. Важно: Перед отключением галочки рекомендуется нажать ссылку Настроить и выполнить команду Очистить индекс. Это даст команду серверу удалить файлы индексов корректно. Однако, если файлы уже разрослись до сотен гигабайт, сервер может не справиться, и придется удалять их вручную, как описано в Способе 1.
4. Снимите флажок Полнотекстовый поиск данных.
После этого платформа перестанет использовать службу полнотекстового поиска и создавать файл tableChanges.dat.
Разработчики 1С выпускают исправления для данной ошибки. Давайте рассмотрим стратегические меры, чтобы проблема не вернулась.
Обновление платформы
Проверьте список исправленных ошибок на сайте 1С для вашей версии платформы. Ошибка с неконтролируемым ростом файлов индекса (часто связанная с ошибкой 000166233 или аналогичными) исправлена в более поздних релизах (например, новее мая-июня 2024 года). Рекомендуется обновить платформу до актуального релиза, где эта проблема официально устранена.
Настройка регламентных заданий
Если вы решили оставить полнотекстовый поиск включенным, настройте регламентные задания грамотно:
Обновление индекса ППД — можно запускать часто (например, раз в минуту или раз в 5 минут), чтобы данные быстро попадали в поиск.Слияние индекса ППД — это ресурсоемкая операция, которая как раз и может приводить к проблемам с файлами при сбоях. Попробуйте настроить расписание этого задания так, чтобы оно выполнялось один раз в сутки, ночью (например, в 03:00), когда нагрузка на базу минимальна.В ходе обсуждения проблемы специалистами были выявлены дополнительные факторы, провоцирующие рост файла:
1. Антивирусы и блокировки
Убедитесь, что папка srvinfo (и весь каталог кластера серверов 1С) добавлена в исключения антивируса на сервере. Антивирус может перехватывать доступ к файлу tableChanges.dat в момент, когда 1С пытается его изменить или удалить, что приводит к сбою операции слияния и последующему накоплению мусора.
2. Резервное копирование
В некоторых случаях (особенно для файловых баз) замечено, что рост файла провоцируется процессом создания резервной копии штатными средствами 1С (архивирование). Если вы используете файловый вариант, рассмотрите альтернативные способы бэкапа (копирование файла 1Cv8.1CD при остановленной службе/веб-сервере).
3. Проверка целостности и очистка кэша
После удаления файлов индекса и перед его перестроением полезно запустить "Тестирование и исправление" информационной базы. Также хорошей практикой является автоматическая очистка серверного кэша или использование специального Bat файла для очистки кеша 1С с сохранением важных настроек.
Проблема с ростом папки reg_1541 — это известная техническая накладка версий платформы 8.3.24+, связанная с полнотекстовым поиском. Самым быстрым решением является остановка сервера, ручное удаление файла tableChanges.dat и полная очистка индекса через меню "Функции для технического специалиста". Для долгосрочного решения рекомендуется либо отключить полнотекстовый поиск (если он не критичен), либо обновить платформу до версии с исправленным багом.