Почему результаты моего Lucene Document пусты? - PullRequest
3 голосов
/ 30 апреля 2010

Я провожу простой тест - пытаюсь что-то проиндексировать, а затем искать. Я индексирую простой документ, но затем при поиске в нем строки я получаю то, что выглядит как пустой документ (в нем нет полей). Lucene, кажется, что-то делает, потому что, если я ищу слово, которого нет в документе, оно возвращает 0 результатов.

Есть ли причина, по которой Lucene надежно вернет документ, когда найдет тот, который соответствует данному запросу, и все же в этом документе ничего нет?

Подробнее:

  • Я на самом деле управляю Lucandra (Lucene + Cassandra). Это, конечно, может быть важной деталью, но не уверен.

  • Для полей заданы значения Field.Store/YES и Field.Index / ANALYZED

  • Интересно, что я могу заставить это нормально работать на моей локальной машине, но когда мы помещаем его на наш главный сервер (который является настройкой многоузловой кассандры), я получаю поведение, описанное выше. Так что это похоже на соответствующую деталь, но, к сожалению, я не вижу сообщения об ошибке, чтобы объяснить мне, что именно его вызывает.

Ответы [ 3 ]

1 голос
/ 02 мая 2010

Не уверены, будет ли это работать с Lucandra, но вы пытались открыть индекс с помощью Luke? Просмотр содержимого индекса с помощью Luke может помочь

0 голосов
/ 31 мая 2010
0 голосов
/ 30 апреля 2010

Трудно сказать, в чем проблема, поскольку вы даете только очень абстрактное описание. Тем не менее, звучит так, будто вы не сохраняете значение поля в индексе. Существуют разные режимы индексации поля. Один параметр определяет, будет ли исходное значение сохранено в индексе для последующего извлечения:

http://lucene.apache.org/java/3_0_0/api/core/org/apache/lucene/document/Field.Store.html

См. Также описание класса Field

...