have a SOLR 4.10.2 core, and I am upgrading to 8.1.1.
When I compare parsedQuery for a search 4.10 vs 8.1.1 I am seeing the query
wrapped with SynonymQuery(Synonym( in 8.1.1.
I think it may be because I replaced the deprecated SynonymFilterFactory with
SynonymGraphFilterFactory.
Is this a new feature of the SynonymGraphFilterFactory? How can I remove that
(or should I?)?
4.10.2
"querystring":"IDX_Company:blue",
"parsedquery":"(IDX_Company:b IDX_Company:bl IDX_Company:blu
IDX_Company:blue)",
...
8.1.1
"querystring":"IDX_Company:blue",
"parsedquery":"SynonymQuery(Synonym(IDX_Company:b IDX_Company:bl
IDX_Company:blu IDX_Company:blue))",
...
Here's the field def:
<field name="Company" type="string" indexed="true" stored="true"/>
<field name="IDX_Company" type="text_general" indexed="true" stored="false"
multiValued="true" />
<copyField source="Company" dest="IDX_Company"/>
Here is the definition of text_general I am using in schema.xml
<fieldType name="text_general" class="solr.TextField"
positionIncrementGap="100" multiValued="true">
<analyzer type="index">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.EdgeNGramFilterFactory" minGramSize="1"
maxGramSize="15"/> <!-- RDH - removed side="front"-->
<filter class="solr.StopFilterFactory" ignoreCase="true"
words="stopwords.txt" />
<!-- RDH SynonymFilterFactory has been deprecated, replace with
SynonymGraphFilterFactory -->
<filter class="solr.SynonymGraphFilterFactory" synonyms="synonyms.txt"
ignoreCase="true" expand="true"/>
<!-- RDH
https://lucene.apache.org/solr/guide/8_1/filter-descriptions.html
Flatten Graph Filter
This filter must be included on INDEX-time analyzer specifications
that include at least one graph-aware filter, including Synonym Graph Filter
and Word Delimiter Graph Filter.
-->
<filter class="solr.FlattenGraphFilterFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<!-- strip all punctuation -->
<filter class="solr.PatternReplaceFilterFactory" pattern="[^\p{L}\p{N}
]" replacement=" " replace="all" /> <!-- RDH -->
</analyzer>
<analyzer type="query">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.EdgeNGramFilterFactory" minGramSize="1"
maxGramSize="15"/> <!-- RDH - removed side="front"-->
<filter class="solr.StopFilterFactory" ignoreCase="true"
words="stopwords.txt" />
<!-- RDH SynonymFilterFactory is deprecated, replace with
SynonymGraphFilterFactory -->
<filter class="solr.SynonymGraphFilterFactory" synonyms="synonyms.txt"
ignoreCase="true" expand="true"/>
<!-- RDH
https://lucene.apache.org/solr/guide/8_1/filter-descriptions.html
Flatten Graph Filter
This filter must be included on INDEX-time analyzer specifications
that include at least one graph-aware filter, including Synonym Graph Filter
and Word Delimiter Graph Filter.
-->
<filter class="solr.FlattenGraphFilterFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<!-- strip all punctuation -->
<filter class="solr.PatternReplaceFilterFactory" pattern="[^\p{L}\p{N}
]" replacement=" " replace="all" /> <!-- RDH -->
</analyzer>
</fieldType>