Мы используем Lucene 5.5.5 для полнотекстового поиска по содержимому нашей базы данных. Мы создаем индекс после переноса базы данных и используем индексный менеджер почти в реальном времени, чтобы поддерживать индекс в актуальном состоянии. Однако иногда может случиться так, что сервер будет уничтожен до того, как менеджер индекса сможет зафиксировать записи индекса, которые он все еще хранит в памяти.
Во избежание необходимости всегда перестраивать индекс при запуске сервера, так как ондовольно медленно, мне было интересно, можно ли проверить индекс на завершение. Я знаю, что есть утилита CheckIndex
, но, насколько я понял, она может только проверять, не сломан ли индекс, но не завершен ли он.
Другим вариантом может быть индексатор, который не перестраивается полностьюно завершает уже существующий индекс.
Как лучше всего это сделать? Моя цель состоит в том, чтобы тратить как можно меньше времени на запуск и иметь полный индекс.
Очевидным решением было бы, я думаю, больше не использовать индексный менеджер почти в реальном времени, но сейчас я быхотел бы не рассматривать этот вариант.