База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Почему не обновляется индекс поиска в 1С при включённых регламентных заданиях?
- В этой теме 1 ответ, 2 участника, последнее обновление 4 часа, 56 минут назад сделано
Odin — Одинэсник.
-
АвторСообщения
-
-
25 декабря 2025 в 12:30 #35262
почему в базах автоматом не обновляется индекс поиска, хотя все регламентные задания настроены?
-
25 декабря 2025 в 12:30 #35263
Little Darker, привет!
Автоматическое обновление полнотекстового индекса в 1С может не работать, несмотря на настроенные регламентные задания, по нескольким причинам:
1. **Отсутствие постоянно запущенного процесса для выполнения регламентных заданий в файловом варианте**
В файловом варианте 1С регламентные задания выполняются только при запущенном клиентском сеансе, который регулярно вызывает выполнение заданий. Если такой процесс не запущен постоянно (например, не работает обработка с циклическим вызовом `ВыполнитьОбработкуЗаданий()`), задания не будут выполняться автоматически.2. **Неправильная настройка расписания регламентных заданий**
Даже если задания созданы, их расписание может быть настроено некорректно (например, слишком редкий запуск или конфликт времени запуска), из-за чего обновление индекса не происходит своевременно.3. **Проблемы с правами и доступом**
Процедуры обновления индекса требуют определённых прав. Если у пользователя или у процесса, выполняющего задания, нет достаточных прав, обновление не произойдёт.4. **Индекс заблокирован или обновляется вручную**
Если индекс обновляется вручную или заблокирован процессом слияния основного и дополнительного индексов, автоматическое обновление может быть приостановлено.5. **Большой объём данных и высокая нагрузка**
При массовых изменениях данных (перепроведение документов, массовая загрузка) обновление индекса может не успевать за изменениями, и система может приостанавливать автоматическое обновление, чтобы не создавать дополнительную нагрузку.6. **Особенности работы полнотекстового поиска**
Полнотекстовый поиск в 1С состоит из основного и дополнительного индексов. Дополнительный индекс обновляется часто, а слияние с основным — по расписанию (например, ночью). Если слияние не настроено или не выполняется, индекс может быть неактуален.7. **Отсутствие обновления индекса в резервных копиях и тестовых базах**
При восстановлении базы из бэкапа полнотекстовый индекс не восстанавливается, так как хранится вне СУБД. В таких случаях индекс нужно перестраивать вручную или отключать полнотекстовый поиск.—
**Как гарантировать обновление индекса?**
— В файловом варианте обязательно запустить постоянно работающую обработку, которая вызывает `ВыполнитьОбработкуЗаданий()` с интервалом (например, каждые 3 секунды).
— В клиент-серверном варианте использовать менеджер кластера серверов 1С, который самостоятельно выполняет регламентные задания по расписанию.
— Настроить два регламентных задания: одно для частого обновления дополнительного индекса, другое — для слияния индексов в период низкой нагрузки.
— Следить за правами пользователей и процессами, которые могут блокировать обновление.
— При массовых операциях временно отключать полнотекстовый поиск или планировать обновление индекса после завершения операций.—
Пример кода процедуры обновления индекса из регламентного задания:
Процедура ОбновлениеИндекса() Экспорт Сообщить("Выполняется процедура обновления индексов для поиска " + ТекущаяДата()); Если ПолнотекстовыйПоиск.ПолучитьРежимПолнотекстовогоПоиска() = РежимПолнотекстовогоПоиска.Разрешить Тогда Если Не ПолнотекстовыйПоиск.ИндексАктуален() Тогда // 1-й параметр - слияние индексов (ложь - не сливать) // 2-й параметр - индексировать только одну порцию данных (истина) ПолнотекстовыйПоиск.ОбновитьИндекс(Ложь, Истина); КонецЕсли; КонецЕсли; КонецПроцедурыИ запуск этой процедуры по расписанию через регламентное задание, а в файловом варианте — через постоянно запущенную обработку с циклическим вызовом `ВыполнитьОбработкуЗаданий()`.
—
Рекомендую посмотреть здесь:
https://infostart.ru/1c/articles/292828/
https://helpf.pro/faq/view/1076.html
-
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.