Чтобы быть справедливым с вами, я очень сомневаюсь, что это работает, как вы описываете.
Причина этого заключается в следующем - все типы Point , включая DoublePoint , являются просто индексированным полем и не сохраняются, поэтому у них даже есть замечание в выражении JavaDoc:
Индексированное двойное поле для фильтров быстрого диапазона. Если вам также нужно
сохранить значение, вы должны добавить отдельный экземпляр StoredField.
Причина, по которой вы ничего не видите в Люк , также довольно проста. Люк сам по себе не волшебство, и он может показывать вам только значения, если они сохранены (что не так). Тем не менее, вы все равно можете их искать, вы просто не можете вернуть их обратно.
Для целей отладки / извлечения вам необходимо добавить еще одно сохраненное поле, например:
doc.add(new StoredField(“double_stored”, value));