I am using the DirectSolrSpellChecker in the solr.config file and the suggestions returned are more or less correct with the exception of the word "energy". If I search for "enery" or "eneryg" or "energyy" or "energgy" it suggests "energi", "emerg" etc. but not the intended "energy"
solr.config:
<lst name="spellchecker">
<str name="name">default</str>
<str name="field">page_title_t</str>
<str name="classname">solr.DirectSolrSpellChecker</str>
<str name="distanceMeasure">internal</str>
<float name="accuracy">0.5</float>
<int name="maxEdits">2</int>
<int name="minPrefix">1</int>
<int name="maxInspections">5</int>
<int name="minQueryLength">4</int>
<float name="maxQueryFrequency">0.01</float>
</lst>
I even tried the FileBasedSpellChecker and created a spellings.txt file, with one word per line, but it also returned the same results
<lst name="spellchecker">
<str name="name">filebased</str>
<str name="field">page_title_t</str>
<str name="classname">solr.FileBasedSpellChecker</str>
<str name="sourceLocation">spellings.tx</str>
<str name="characterEncoding">UTF-8</str>
<str name="spellingcheckingIndexDir">./spellcheckerFile</str>
</lst>
Here is the solr query
https://localhost:8983/solr/avista_fxm_custom_index/spell?q=page_title_t:*eneryg&spellcheck=true&spellcheck.count=10&rows=100000000&version=2.2&spellcheck.build=true&wt=json&indent=true
Result:
{
"responseHeader":{
"status":0,
"QTime":10},
"response":{"numFound":0,"start":0,"docs":[]
},
"spellcheck":{
"suggestions":[
"eneryg",{
"numFound":3,
"startOffset":14,
"endOffset":20,
"origFreq":0,
"suggestion":[{
"word":"energ",
"freq":1},
{
"word":"energi",
"freq":59},
{
"word":"emerg",
"freq":4}]}],
"correctlySpelled":false,
"collations":[
"collation",{
"collationQuery":"page_title_t:*energ",
"hits":1,
"misspellingsAndCorrections":[
"eneryg","energ"]},
"collation",{
"collationQuery":"page_title_t:*energi",
"hits":59,
"misspellingsAndCorrections":[
"eneryg","energi"]},
"collation",{
"collationQuery":"page_title_t:*emerg",
"hits":4,
"misspellingsAndCorrections":[
"eneryg","emerg"]}]}}
What am I missing? Is my FilebasedSpellchecker not working either?