lucene-solr-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Doddamani, Prakash" <prakash.doddam...@corp.aol.com>
Subject RE: Highlighting is not happening
Date Mon, 24 May 2010 17:13:38 GMT
Thanks Sascha,

The "type" for fields for which I am searching are all "text" , and I am
using solr.TextField


<fieldType name="text" class="solr.TextField"
positionIncrementGap="100">
      <analyzer type="index">
        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
        <!-- in this example, we will only use synonyms at query time
        <filter class="solr.SynonymFilterFactory"
synonyms="index_synonyms.txt" ignoreCase="true" expand="false"/>
        -->
        <!-- Case insensitive stop word removal.
             enablePositionIncrements=true ensures that a 'gap' is left
to
             allow for accurate phrase queries.
        -->
        <filter class="solr.StopFilterFactory"
                ignoreCase="true"
                words="stopwords.txt"
                enablePositionIncrements="true"
                />
        <filter class="solr.WordDelimiterFilterFactory"
generateWordParts="1" generateNumberParts="1" catenateWords="1"
catenateNumbers="1" catenateAll="0" splitOnCaseChange="1"/>
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.EnglishPorterFilterFactory"
protected="protwords.txt"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
      </analyzer>
      <analyzer type="query">
        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
        <filter class="solr.SynonymFilterFactory"
synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
        <filter class="solr.StopFilterFactory" ignoreCase="true"
words="stopwords.txt"/>
        <filter class="solr.WordDelimiterFilterFactory"
generateWordParts="1" generateNumberParts="1" catenateWords="0"
catenateNumbers="0" catenateAll="0" splitOnCaseChange="1"/>
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.EnglishPorterFilterFactory"
protected="protwords.txt"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
      </analyzer>
    </fieldType>

Regards
Prakash


-----Original Message-----
From: Sascha Szott [mailto:szott@zib.de] 
Sent: Monday, May 24, 2010 10:29 PM
To: solr-user@lucene.apache.org
Subject: Re: Highlighting is not happening

Hi Prakash,

more importantly, check the field type and its associated analyzer. In
case you use a "non-tokenized" type (e.g., string), highlighting will
not appear if only a partial field match exists (only exact matches,
i.e. the query coincides with the field value, will be highlighted). If
that's not your intent, you should at least define an tokenizer for the
field type.

Best,
Sascha

Doddamani, Prakash wrote:
> Hey Daren,
> Yes the fields for which I am searching are stored and indexed, also 
> they are returned from the query, Also it is not coming, if the entire

> search keyword is part of the field.
>
> Thanks
> Prakash
>
> -----Original Message-----
> From: darren@ontrenet.com [mailto:darren@ontrenet.com]
> Sent: Monday, May 24, 2010 9:32 PM
> To: solr-user@lucene.apache.org
> Subject: Re: Highlighting is not happening
>
> Check that the field you are highlighting on is "stored". It won't 
> work otherwise.
>
>
> Now, this also means that the field is returned from the query. For 
> large text fields to be highlighted only, this means the entire text 
> is returned for each result.
>
>
> There is a pending feature to address this, that allows you to tell 
> Solr to NOT return a specific field (to avoid unecessary transfer of 
> large text fields in this scenario).
>
> Darren
>
>> Hi
>>
>>
>>
>> I am using dismax request handler, I wanted to highlight the search 
>> field,
>>
>> So added
>>
>> <str name="hl">true</str>
>>
>> I was expecting like if I search for keyword "Akon" resultant docs 
>> wherever the Akon is available is bold.
>>
>>
>>
>> But I am not seeing them getting bold, could some one tell me the 
>> real
>
>> path where I should tune
>>
>> If I pass explicitly the hl=true does not work
>>
>>
>>
>> I have added the request handler
>>
>>
>>
>> <requestHandler name="dismax" class="solr.SearchHandler">
>>      <lst name="defaults">
>>       <str name="defType">dismax</str>
>>       <str name="echoParams">explicit</str>
>>       <float name="tie">0.01</float>
>>       <str name="qf">
>>    name^20.0 coming^5 playing^4 keywords^0.1
>>       </str>
>>    <str name="bf">
>>          rord(isclassic)^0.5 ord(listeners)^0.3
>>       </str>
>>    <str name="*,score">
>>    name, coming, playing, keywords, score
>>       </str>
>>       <str name="mm">
>>          2&lt;-1 5&lt;-2 6&lt;90%
>>       </str>
>>       <int name="ps">100</int>
>>       <str name="q.alt">*:*</str>
>>       <!-- example highlighter config, enable per-query with hl=true
>> -->
>>
>>       <str name="hl">true</str>
>>      <!--<str name="hl.simple.pre"><b></str>
>>               <str name="hl.simple.post"></b></str>  -->
>>       <!-- for this field, we want no fragmenting, just highlighting
> -->
>>       <str name="f.name.hl.fragsize">0</str>
>>       <!-- instructs Solr to return the field itself if no query 
>> terms are found -->
>>       <!--<str name="f.name.hl.alternateField">name</str>  -->
>>       <str name="f.text.hl.fragmenter">regex</str>  <!-- defined 
>> below
> -->
>>      </lst>
>>    </requestHandler>
>>
>> regards
>> prakash
>>
>


Mime
View raw message