lucene удалить запись, устарела? - PullRequest
1 голос
/ 16 сентября 2010

При проведении исследования по удалению документов в lucene было показано, что я использую метод IndexReaders delete (), передавая идентификатор документа. Теперь, когда мне действительно нужно это сделать, похоже, что lucene в настоящее время не поддерживает этот метод, и мне очень не повезло найти текущий способ сделать это.

Есть идеи?

Ответы [ 2 ]

1 голос
/ 17 сентября 2010

Идентификаторы документов являются внутренними для Lucene и действительно никогда не должны использоваться.Они могут быть изменены без предупреждения, среди других вопросов.

Как вы получаете документы ID?Предположительно через запрос?Затем просто удалите на основе этого запроса.Кроме того, если у вас есть собственное поле уникального идентификатора, вы можете сделать writer.DeleteDocuments(new Term("MyIDField", "ID to delete"));

1 голос
/ 16 сентября 2010

теперь удаление можно выполнить с помощью IndexWriter

http://lucene.apache.org/java/3_0_2/api/all/org/apache/lucene/index/IndexWriter.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...