2016-07-11 3 views
0

Ich muss mehrere eindeutige Schlüssel in solr Sammlung erstellen und verwandte Frage Solr Composite Unique key from existing fields in schema readed. Aber ich brauche diesen Schlüssel, um lesbar zu sein, jetzt sehe ich Hash. Ich hinzugefügt:Solr: create eindeutigen Schlüssel mit Verkettung

solrconfig.xml:

<config> 
    <!-- Here is standart config --> 
    ... 
    <!-- My updateRequestProcessorChain --> 
    <updateRequestProcessorChain name="inn-unique-key"> 
     <processor class="solr.CloneFieldUpdateProcessorFactory"> 
      <str name="source">inn</str> 
      <str name="source">source</str> 
      <str name="source">kpp</str> 
      <str name="dest">id</str> 
     </processor> 
     <processor class="solr.ConcatFieldUpdateProcessorFactory"> 
      <str name="fieldName">id</str> 
      <str name="delimiter">-</str> 
     </processor> 
     <processor class="solr.RunUpdateProcessorFactory" /> 
    </updateRequestProcessorChain> 
</config> 

schema.xml - innen <schema> tag:

<requestHandler name="/update" class="solr.UpdateRequestHandler"> 
    <lst name="defaults"> 
     <str name="update.chain">inn-unique-key</str> 
    </lst> 
</requestHandler> 
<field name="inn" type="long" required="true" indexed="true" stored="true" /> 
<field name="kpp" type="long" default="0" required="false" indexed="true" stored="true" /> 
<field name="source" type="string" indexed="true" stored="true" required="true" /> 

Wenn ich versuche Datensatz hinzufügen, zum Beispiel:

{ 
    "inn": 764575576, 
    "kpp": 123, 
    "source": "self" 
} 

ich sehen Hash "6dab8c2b-e5e3-4d5a-a17a-759da05a3e64" in "ID" -Feld. Hilf mir bitte, wie sieht man stattdessen "764575576-self-123"?

Antwort

0

Ich habe meinen Fehler gefunden. updateRequestProcessorChain und requestHandler Tags müssen beide in solrconfig.xml sein! Nicht in schema.xml

Verwandte Themen