Задать вопрос

Как решить проблему ограничения кол-ва символов в SOLR?

Приветствую, есть вот такая схема:
<field name="text" type="text_en" default="" indexed="true" stored="true"/> 
  <field name="text_exact" type="keyword_content" default="" indexed="true" stored="true" />
   <fieldType name="keyword_content" class="solr.TextField" omitNorms="true" positionIncrementGap="100">
      <analyzer type="index">
        <tokenizer name="keyword"/>
      </analyzer>
      <analyzer type="query">
        <tokenizer name="keyword"/>
      </analyzer>    
   </fieldType>

   <copyField source="text" dest="text_exact" />


Я подключил keyword analyzer для точного поиска, но по какой-то причине solr плюется ошибками в виде:
bytes can be at most 32766 in length; got 60746. Perhaps the document has an indexed string field (solr.StrField) which is too large


Как это можно пофиксить? И возможно ли вообще?
  • Вопрос задан
  • 180 просмотров
Подписаться 3 Средний 2 комментария
Решения вопроса 1
@Snoz3f Автор вопроса
Для своего кейса решил тем, что просто использовал white space tokenizer
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
mayton2019
@mayton2019 Куратор тега Java
Bigdata Engineer
Интересно. Вот тут пишут про похожий инцедент https://stackoverflow.com/questions/24019868/utf8-...
Ответ написан
Комментировать
al_gon
@al_gon
Надо использовать тип solr.TextField если solr. String не хватает. String действительно лимитированн до 32.766.

Да, и нет смысла подлкючать какой-либо токэнайзер на поле по которому ищете 1:1.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
19 дек. 2024, в 02:11
15000 руб./за проект
19 дек. 2024, в 02:09
11000 руб./за проект
19 дек. 2024, в 00:46
30000 руб./за проект