That makes sense because the Query Converter has a hard time with numbers, but 
spellcheck.q bypasses the Query Converter.

James Dyer
Ingram Content Group
(615) 213-4311


-----Original Message-----
From: Poornima Jay [mailto:poornima...@rocketmail.com] 
Sent: Friday, July 26, 2013 4:05 AM
To: solr-user@lucene.apache.org
Subject: Re: Spell check SOLR 3.6.1 not working for numbers

Hi James,

Thanks for you reply. I got it worked and below was my old query.
 
http://localhost:8080/solr_3.6.1_spellcheck/test_spellcheck/spellcheck?q=8956632541&spellcheck=true


now I changed the q to spellcheck.q and it started working. This is the response
<response><lst name="responseHeader"><int name="status">0</int><int 
name="QTime">2</int></lst><result name="response" numFound="0" start="0"/><lst 
name="spellcheck"><lst name="suggestions"><lst name="8956632541"><int 
name="numFound">1</int><int name="startOffset">0</int><int 
name="endOffset">10</int><arr 
name="suggestion"><str>89566325415</str></arr></lst><str 
name="collation">89566325415 </str></lst></lst></response>


Regards,
Poornima


________________________________
 From: "Dyer, James" <james.d...@ingramcontent.com>
To: "solr-user@lucene.apache.org" <solr-user@lucene.apache.org> 
Sent: Thursday, 25 July 2013 9:03 PM
Subject: RE: Spell check SOLR 3.6.1 not working for numbers
 

I think the default SpellingQueryConverter has a hard time with terms that 
contain numbers.  Can you provide a failing case...the query you're executing 
(with all the spellcheck.xxx params) and the spellcheck response (or lack 
thereof).  Is it producing any hits?

James Dyer
Ingram Content Group
(615) 213-4311


-----Original Message-----
From: Poornima Jay [mailto:poornima...@rocketmail.com] 
Sent: Thursday, July 25, 2013 5:00 AM
To: solr-user
Subject: Spell check SOLR 3.6.1 not working for numbers

Hi,

I using SOLR 3.6.1 and implemented spellcheck. I found that the numbers in the 
spellcheck query does not return any results. Below is my solrconfig.xml and 
schema.xml details. Please any one let me know what needs to be done in order 
to get the spell check for numbers.

solrConfig
<searchComponent name="spellcheck" class="solr.SpellCheckComponent">
  <lst name="spellchecker">   
    <str name="name">default</str>   
    <str name="classname">solr.IndexBasedSpellChecker</str>
    <str name="field">spell</str>  
    <str name="spellcheckIndexDir">./spellchecker</str>   
    <str name="accuracy">0.7</str>    
    <str name="buildOnOptimize">true</str>
    <float name="thresholdTokenFrequency">.0001</float>
  </lst> 
  <str name="queryAnalyzerFieldType">textSpell</str>
</searchComponent>
<requestHandler name="/spellcheck" class="solr.SearchHandler">

  <lst name="defaults">
    <!-- Optional, must match spell checker's name as defined above, defaults 
to "default" -->
    <str name="spellcheck.dictionary">default</str>   
    <!-- omp = Only More Popular -->
    <str name="spellcheck.onlyMorePopular">false</str>
    <!-- exr = Extended Results -->
    <str name="spellcheck.extendedResults">false</str>
    <!--  The number of suggestions to return -->
    <str name="spellcheck.count">10</str>
  </lst>
      <arr name="last-components">
      <str>spellcheck</str>
    </arr>    
  </requestHandler>

Schema
<fieldType name="textSpell" class="solr.TextField" positionIncrementGap="100">
         <analyzer type="index">
            <tokenizer class="solr.StandardTokenizerFactory"/>
            <filter class="solr.LowerCaseFilterFactory"/>
            <filter class="solr.StopFilterFactory" ignoreCase="true" 
words="stopwords.txt" enablePositionIncrements="true"/>
            <filter class="solr.StandardFilterFactory" />
            <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
         </analyzer>   
         <analyzer type="query">
        <tokenizer class="solr.StandardTokenizerFactory"/>
         <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.StopFilterFactory" ignoreCase="true" 
words="stopwords.txt"/>
        <filter class="solr.StandardFilterFactory" />
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
      </analyzer>
      </fieldType>

<field name="spell" type="textSpell" indexed="true" stored="true" 
multiValued="true" />

<copyField source="product_code" dest="spell" />
   <copyField source="product_name" dest="spell" />
   <copyField source="product_desc" dest="spell" />
 <copyField source="isbn10" dest="spell" />
   <copyField source="isbn13" dest="spell" />

Thanks,
Poornima

Reply via email to