There are 2 parameters you want to consider: First is "spellcheck.maxResultsForSuggest". Because you have an "OR" query, you'll get hits if only 1 query term is in the index. This parameter lets you tune it to make it suggest if the query returns n or fewer hits. My memory tells me, however, that if you leave this parameter out entirely, it will still return suggestions for "OR" queries with some misspelled words (false memory on my part?). Possibly you have this set to 1? Omitting it might be a better option. See http://wiki.apache.org/solr/SpellCheckComponent#spellcheck.maxResultsForSuggest .
Second is "collateParam", which lets you override certain query parameters when the spellchecker is testing collations against the index. For instance, if you have "q.op=OR", the spellchecker will return collations that possibly only have 1 correct term. The reason is it simply checks if a collation will return any hits. So you can overide this with "spellcheck.collateParam.q.op=AND". The same can be done for "mm" if using edismax. See http://wiki.apache.org/solr/SpellCheckComponent#spellcheck.collateParam.XX . James Dyer Ingram Content Group (615) 213-4311 -----Original Message----- From: Daniel Borup [mailto:d...@alpha-solutions.dk] Sent: Monday, November 11, 2013 7:38 AM To: solr-user@lucene.apache.org Subject: spellcheck solr 4.3.1 Hey I am running af solr 4.3.1 and working is implementing spellcheck using solr.DirectSolrSpellChecker everything seems to be working fine but at have one issue. If I search for http://localhost:8765/solr/MainIndex/spell?q=kim%20AND%20larsen the result is some hits and the spell component return the following structure. <lst name="spellcheck"> <lst name="suggestions"> <bool name="correctlySpelled">true</bool> </lst> </lst> I would have liked that if some suggest were found they were return.... If I do a search for http://localhost:8765/solr/MainIndex/spell?q=kim%20AND%20larsenn with larsen spelled wrong (larsenn) the spell component return the following: <lst name="spellcheck"> <lst name="suggestions"> <lst name="larsenn"> <int name="numFound">1</int> <int name="startOffset">8</int> <int name="endOffset">15</int> <int name="origFreq">0</int> <arr name="suggestion"> <lst> <str name="word">larsen</str> <int name="freq">12</int> </lst> </arr> </lst> <bool name="correctlySpelled">false</bool> <lst name="collation"> <str name="collationQuery">kim AND larsen</str> <int name="hits">12</int> <lst name="misspellingsAndCorrections"> <str name="kim">kim</str> <str name="larsenn">larsen</str> </lst> </lst> </lst> </lst> In my point of view this is correct but, if I do the same search as above just as an OR search http://localhost:8765/solr/MainIndex/spell?q=kim%20OR%20larsenn The spell component return some result and: <lst name="spellcheck"> <lst name="suggestions"> <bool name="correctlySpelled">true</bool> </lst> </lst> larsenn now is spelled corrected according to solr, I cannot understand this behavior. Is there a setting to adjust the spell component so it always return suggestions ? or a way to have suggest in OR search with one wrong word working? Med venlig hilsen / Best regards Daniel Borup Tel: (+45) 28 87 69 18 E-mail: d...@alpha-solutions.dk<mailto:d...@alpha-solutions.dk> Alpha Solutions A/S Sølvgade 10, 1.sal, DK-1307 Copenhagen K Tel: (+45) 70 20 65 38 Web: www.alpha-solutions.dk<http://www.alpha-solutions.dk/> ** This message including any attachments may contain confidential and/or privileged information intended only for the person or entity to which it is addressed. If you are not the intended recipient you should delete this message. Any printing, copying, distribution or other use of this message is strictly prohibited. If you have received this message in error, please notify the sender immediately by telephone or e-mail and delete all copies of this message and any attachments from your system. Thank you.