Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
5.5
-
None
Description
Spinoff from discussion in solr-user list http://find.searchhub.org/document/8dfce8a277de0f2a
The managed synonyms filter does not behave the same way as the original synonym filter when a list is added. The original synonyms filter with default expand=true produces the following map when parsing a line:
Input:
a, b, c
Becomes:
a => a, b, c b => a, b, c c => a, b, c
But the managed filter excludes the original term in the mapping, so an input ["a", "b", "c"] becomes:
a => b, c b => a, c c => a, b
This can also be seen in TestManagedSynonymFilterFactory.java where it is tested explicitly, while the tests for the file based synonymfilter expect an all-way expand including the original term.
This causes a query for "a" to not match documents with the term "a", but only those with term "b" or "c".
The offending line in ManagedSynonymFilterFactory is this
188: treeTerms.remove(origTerm);
Attachments
Attachments
Issue Links
- is related to
-
SOLR-6878 solr.ManagedSynonymFilterFactory all-to-all synonym switch (aka. expand)
- Closed