2017-11-24 1 views
1

ich von Solr 6,6-7,1 kürzlich aktualisiert und nicht Doppel Felder für jeden Wert abfragen kann mehrSolr 7.1: für jeden Wert Doppelfeld Abfrage nicht möglich mit * mehr

q: test_d:* 

(null Ergebnisse mit, obwohl das Feld gesetzt ist).

q: test_d:[* TO *] 

funktioniert. Dies scheint alle numerischen Feldtypen zu betreffen (getestet für Integer, Floats und Doubles). Für String, Text, Boolesche Felder funktioniert das einzelne Sternchen genau wie vorher.

Ist es möglich, Solr neu zu konfigurieren, um das alte Verhalten zu haben, oder muss ich alle Abfragen neu schreiben und einen Schalter für numerische Feldtypen einführen? Bisher war keine Unterscheidung nach Feldwerten erforderlich (was gut ist!).

Minimal Arbeitsbeispiel

Verwenden Sie den example-DIH-solr Kern mit dem ausschüttbaren Solr geliefert, drücken Sie das Dokument

{"id":"foo","test_b":true,"test_i":42,"test_f":42.0,"test_d":42.0} 

und

q: test_b:* 
q: test_d:* 
q: test_i:* 
q: test_f:* 

Nur die Abfrage für das Boolean Feld verwenden ein Ergebnis ergeben.

Antwort

2

Doppelte Felddefinition geändert. Um das alte Verhalten wiederherstellen Sie verwenden können/ändern diese:

<dynamicField name="*_d" type="double" indexed="true" stored="true"/> 

und fügen Sie wieder die doppelte Feldtypdefinition dem Schema:

<fieldType name="double" class="solr.TrieDoubleField" precisionStep="0" positionIncrementGap="0"/> 

Diese in der Vergangenheit zusammengearbeitet, aber höchstwahrscheinlich pro Unfall - siehe https://issues.apache.org/jira/browse/SOLR-11746 für einen Fehlerbericht/solr Problem, um dies zu verfolgen.

+0

Wo haben Sie die Dokumentation zu dieser Änderung gefunden? Ich habe auch Probleme mit der Version 7.1. Meine Abfrage gibt keine Ergebnisse zurück und ich möchte alle Änderungen überprüfen, um sie mit meiner schema.xml-Datei zu vergleichen. Vielen Dank – lpfx

Verwandte Themen