Логический запрос Lucene на не проанализированные поля

Используя RavenDB, чтобы сделать запрос на Индексе Lucene.

Этот запрос анализирует хорошо: X:] И Y: [b]] И Z: [c]]

Однако этот запрос дает мне исключение синтаксического анализа: X:] И Y: [b]] И Z: [c]] И P: [d]]

"Lucene. Сеть. QueryParsers. ParseException: не Может проанализировать' (И)': Встреченный \" \"И"

Я попробовал, это на индексе complexed и простой воспроизводит случаи и тот же результат, которым это кажется, после того как Вы идете прошлые три ands, которые он аварийно завершает. Я использую [[]] и не проанализированный, потому что я хочу точные совпадения (также иногда, значения содержат пробел и т.д.) и от RavenDB у меня есть veyr мало управления индексацией.

Я задаюсь вопросом, как я могу переписать запрос для предотвращения исключения синтаксического анализа?

1
задан 25 June 2010 в 04:33
поделиться

2 ответа

Это похоже на ошибку в QueryParser Lucene, возможно, попробуйте сообщить об этом в списке рассылки пользователей.

В качестве обходного пути вы можете создать BooleanQuery вручную и самостоятельно добавить нужные термины. Поскольку они не анализируются и запрос не выглядит слишком сложным, вам может быть лучше без анализатора запросов.

0
ответ дан 2 September 2019 в 23:31
поделиться

Теперь это исправлено в последних сборках RavenDB. См. эту ветку для получения дополнительной информации.

2
ответ дан 2 September 2019 в 23:31
поделиться