Я работаю над lucene около года и внезапно сегодня я обнаружил в нем что-то странное.
Я обновлял свою индексацию, используя обычный механизм lucene: извлекал документ и удалял старый, а затем переиндексировал документ. Итак: 1. Получил документ для обновления из индекса lucene и сохранил этот документ в списке 2. Удалил документ из индекса. 3. Используя документ из списка, обновили некоторые из его полей, а затем повторно проиндексировали этот документ.
Но когда я обнаружил, что этот обновленный документ, который был проиндексирован, имел повторяющиеся значения для исходного поля документа.
Например, предположим, что существует поле id: 1, и я не обновлял это поле и не обновлял другое содержимое документа, а затем индексировал этот документ. Я обнаружил, что этот id: 1 встречается два раза в одном и том же документе. И даже больше, если я переиндексирую один и тот же документ, одно и то же поле будет создаваться много раз в одном документе.
Как мне избавиться от этого дублирования?