2017-06-06 178 views
0

我剛開始使用solr-6.5.1,試圖從Oracle DB導入數據。 我的數據沒有任何唯一ID,通過各種論壇進行搜索,發現使用class =「solr.UUIDUpdateProcessorFactory」可以解決這個問題。但stil得到相同的錯誤。下面是我的managed-schema和solrconfig.xml的片段。SOLR:缺少文檔必需uniqueKey字段:編號

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" /> 
    </updateRequestProcessorChain> 

託管模式

<field name="id" type="uuid" indexed="true" stored="true" required="true" /> 
    <field name="SERVICEACCOUNTNUMBER" type="string" indexed="true" stored="true" required="true" multiValued="false" /> 
    <field name="USERNAME" type="string" indexed="true" stored="true" required="true" multiValued="false" /> 
    <field name="NAME" type="string" indexed="true" stored="true" multiValued="false" /> 
    <field name="TRANSACTION_DATE" type="date" indexed="true" stored="true" /> 
    <field name="PROCESSSTATUS" type="string" indexed="true" stored="true" /> 
    <field name="RECHARGE_MODE" type="string" indexed="true" stored="true" /> 
    <field name="PROCESSRECHARGEREQUESTNO" type="string" indexed="true" stored="true" /> 
    <field name="PACKAGE_ID" type="string" indexed="true" stored="true" /> 
    <field name="PACKAGENAME" type="string" indexed="true" stored="true" /> 
    <field name="AMOUNT" type="int" indexed="true" stored="true" multiValued="true" /> 
    <field name="CREDITDOCUMENTNUMBER" type="string" indexed="true" stored="true" multiValued="true" /> 
    <field name="DEBITDOCUMENTNUMBER" type="string" indexed="true" stored="true" /> 
    <field name="SERVICE_TYPE" type="string" indexed="true" stored="true" multiValued="true" /> 

請幫

回答

0

答案學分後solr uuid with error document is missing mandatory uniquekey field id

更新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> 
相關問題