2016-12-14 2 views
0

Я попытался сгенерировать идентификатор с использованием методов UUID, но в процессе импорта данных возникают следующие ошибки.solr uuid с документом ошибки отсутствует обязательное поле uniquekey id

org.apache.solr.common.SolrException: Документ отсутствует обязательное поле uniqueKey: идентификатор

Вот мои конфигурационные файлы:

управляемых схем

<field name="id" type="uuid" indexed="true" stored="true" multiValued="false" /> 
<fieldType name="uuid" class="solr.UUIDField" indexed="true" /> 

solrconfig.xml

<requestHandler name="/update" class="solr.UpdateRequestHandler"> 
     <lst name="defaults"> 
      <str name="update.chain">uuid</str> 
     </lst> 
     </requestHandler> 


<updateRequestProcessorChain name="uuid"> 
    <processor class="solr.UUIDUpdateProcessorFactory"> 
     <str name="fieldName">id</str> 
    </processor> 
    <processor class="solr.RunUpdateProcessorFactory" /> 
    <processor class="solr.DistributedUpdateProcessorFactory" /> 
</updateRequestProcessorChain> 

И моя Solr версия 6,3

ответ

3

Я получил решение. Конфигурация выше для версии solr 4.X. Теперь для новой версии, конфигурации в solrconfig.xml должно быть так:

<requestHandler name="/dataimport" class="solr.DataImportHandler"> 
    <lst name="defaults"> 
     <str name="config">data-config.xml</str> 
     <str name="update.chain">uuid</str> 
    </lst> 
</requestHandler> 

<updateRequestProcessorChain name="uuid"> 
     <processor class="solr.UUIDUpdateProcessorFactory"> 
      <str name="fieldName">id</str> 
     </processor> 
     <processor class="solr.RunUpdateProcessorFactory"/> 
</updateRequestProcessorChain> 
Смежные вопросы