У меня есть коллекция SolrCloud, настроенная с несколькими обработчиками запросов, и я хотел бы получить доступ к обработчику запроса по умолчанию, который называется /all
, который определен в файле solrconfig.xml. Этот обработчик отлично работает, когда я ищу в браузере:SolrJ не задает обработчик запросов
Однако при поиске с помощью SolrJ SolrQuery.setRequestHandler("all")
, я получаю 0 результатов. SolrJ просто ставит qt=/all
в запросе, так что эти результаты браузера одного и того же запроса (SolrJ получает то же самое):
наблюдается Такое же поведение для все наши другие обработчики. Если обработчик не определен, Solr выдает другую ошибку, если есть ведущий «/» или по умолчанию, чтобы выбрать, нет ли ведущего «/», поэтому мы знаем, что это не проблема.
Так что мой вопрос: как я могу заставить это работать в SolrJ? Выбор имеет настройки по умолчанию в файле solrconfig.xml и он должен оставаться обработчиком по умолчанию. Поиск вокруг, ошибка, похоже, происходит, когда есть повторяющиеся идентификаторы, или поле id не сохраняется. Но если это так, ни один из поисков не должен работать, поэтому я думаю, что здесь должно быть что-то еще.
просто предположение:/все можно зарезервировать. Вы пытались определить другую уникальную конечную точку обработчика? –
Да, у нас есть еще двое, и с ними одинаковое поведение. Если это помогает, это SolrCloud 6.0.1, и мы являемся автономной версией (5.3.0) с идентичным индексом, где все обработчики (включая/все) работают правильно, используя этот метод. – jbird
Хорошо. Вы пробовали отправить в список рассылки solr? Захватить внимание соответствующих людей могло бы помочь. –