Вам может потребоваться решить, зачем вам сначала загружать свои поля в память?
Вы пытались выполнить поиск, используя TermQuery и термин, который просто содержит поле, которое вы хотите загрузить? например новый термин («ID»).
Тогда вам не нужно загружать все значения в память для их перебора. Вместо этого используйте FieldSelector , чтобы при загрузке каждого результата поиска загружалось только одно поле.
В противном случае используйте Lucene FieldCache , чтобы получить значения для всех ваших полей идентификатора.