2017-02-03 12 views
0

Я пытаюсь использовать/обновить/экстракт в поле, которое ссылается на столбце базы данных в Solr 6.3, но он не работает, и эта ошибка кажется мне:Error неопределенное поле: «stream_size» на Solr

Status: {"data":{"responseHeader":{"status":400,"QTime":8},"error":{"metadata":["error-class","org.apache.solr.common.SolrException","root-error-class","org.apache.solr.common.SolrException"],"msg":"undefined field: \"stream_size\"","code":400}},"status":400,"config":{"method":"POST","transformRequest":[null],"transformResponse":[null],"headers":{"Content-type":"application/json","Accept":"application/json, text/plain, */*"},"data":"[]","url":"/solr/TesteSisp/update%2Fextract","params":{"wt":"json","_":1486132402860,"commitWithin":1000,"boost":"1.0","overwrite":true},"timeout":10000},"statusText":"Bad Request"} 
Response: 

{ 
    "responseHeader": { 
    "status": 0, 
    "QTime": 5 
    } 
} 

Кто-то знает, что я могу сделать?

+1

У вас есть поле stream_size в вашей схеме? Используйте SchemaAPI для просмотра определенных полей. – MatsLindh

+0

Нет, я не хочу. Как я могу это сделать? –

ответ

1

Процесс извлечения будет генерировать кучу полей с содержанием и метаданными. Solr требует, чтобы вы четко указывали, что делать с каждым полем, которое оно получает во время процесса индексирования.

Вам нужно иметь стратегию борьбы с ним. Обычно это один из:

  1. Есть поле явно созданное в схеме (или иметь соответствующее динамическое поле)
  2. режима использования schemaless для автоматического создания полей на основе первой видели содержание
  3. Используйте fmap or uprefix глобально карты имена полей для известных полей/dynamicFields
  4. Имейте динамическое поле *, которое будет либо хранить, либо удалять все имена полей, которые не соответствуют никаким другим определениям.

Вы также можете играть с полями и/или именами полей в цепочках UpdateRequestProcessor, но это более продвинутый.

+0

Не работайте для меня. :/ –

+0

Одна из этих стратегий должна работать. Особенно это касается номера 4. Если это не сработает, возможно, вы редактируете неправильный файл конфигурации, не загружаете его в Cloud (если используете) или не перезагружаете коллекцию, чтобы получить изменения. Проверьте в браузере файлов пользовательского интерфейса администратора, видите ли вы изменения, внесенные вами. –