Podczas próby uaktualnienia z Solr 4.3.0 do 4.4.0 SOLR wpadłem na ten wyjątek:Solr 4.4: StopFilterFactory i enablePositionIncrements
java.lang.IllegalArgumentException: enablePositionIncrements=false is not supported anymore as of Lucene 4.4 as it can create broken token streams
, które doprowadziły mnie do this issue. Muszę być w stanie dopasować zapytania niezależnie od interweniowania stopwords (który pracował z enablePositionIncrements = "true"). Na przykład: "foo of the bar" znajdzie dokumenty pasujące do "foo bar", "foo of bar" i "foo of the bar". Z tą opcją przestarzałą w wersji 4.4.0 nie wiem, jak zachować tę samą funkcjonalność.
package javadoc dodaje:
Jeśli wybrany analizator filtruje słowa STOP „” i „”, a następnie do dokumentu zawierającego ciąg „niebieski jest niebo”, tylko tokeny „niebieski” , "niebo" jest indeksowane, z pozycją ("niebo") = 3 + pozycja ("niebieski"). Teraz zapytanie "niebieskie jest niebem" znajdzie ten dokument, ponieważ ten sam analizator filtruje te same słowa zatrzymania z tego zapytania. Jednak zapytanie "niebieskie niebo" nie znajdzie tego dokumentu, ponieważ przyrost pozycji między "niebieskim" a "niebem" wynosi tylko 1.
Jeśli to zachowanie nie jest zgodne z potrzebami aplikacji, należy skonfigurować analizator zapytań nie uwzględniać przyrostów pozycji podczas generowania zapytań dotyczących fraz.
Ale nie ma żadnej wzmianki o tym, jak właściwie skonfigurować analizator zapytań, aby to zrobić. Czy ktoś wie, jak sobie z tym poradzić, gdy Solr porusza się w kierunku 5.0?
znalazłeś rozwiązanie tego problemu? –
@VishalParekh nope - nie znalazłem jeszcze rozwiązania ... – condit
@condit Mam ten sam problem, myślałem o ponownym wdrożeniu 'StopFilterFactory' i ponownie włącz opcję" enablePositionIncrements "na false – MoustafaAAtta