It seems like maybe the fragmenter parameters just don't get displayed with
echoParams=all set. It may only display as far as the request handler's
parameters. The reason I think this is because I tried increasing
hl.fragsize to 1000 and the results were returned correctly (much larger
snippets), so I know it was read correctly.

I moved hl.snippets into the requestHandler config instead of the
fragmenter, and this seems to have solved the problem. However, I'm uneasy
with this solution because I don't know why it wasn't being read correctly
when setting it inside the fragmenter.

Mark



On Mon, Dec 15, 2008 at 5:08 PM, Mark Ferguson <mark.a.fergu...@gmail.com>wrote:

> Thanks for this tip, it's very helpful. Indeed, it looks like none of the
> highlighting parameters are being included. It's using the correct request
> handler and hl is set to true, but none of the highlighting parameters from
> solrconfig.xml are in the parameter list.
>
> Here is my query:
>
>
> http://localhost:8080/solr1/select?rows=50&hl=true&fl=url,urlmd5,page_title,score&echoParams=all&q=java
>
> Here are the settings for the request handler and the highlighter:
>
> <requestHandler name="dismax" class="solr.SearchHandler" default="true">
>   <lst name="defaults">
>    <str name="defType">dismax</str>
>    <float name="tie">0.01</float>
>    <str name="qf">body_text^1.0 page_title^1.6 meta_desc^1.3</str>
>    <str name="q.alt">*:*</str>
>    <str name="hl.fl">body_text page_title meta_desc</str>
>    <str name="f.page_title.hl.fragsize">0</str>
>    <str name="f.meta_desc.hl.fragsize">0</str>
>    <str name="hl.fragmenter">regex</str>
>   </lst>
> </requestHandler>
>
> <highlighting>
>   <fragmenter name="regex"
> class="org.apache.solr.highlight.RegexFragmenter" default="true">
>     <lst name="defaults">
>       <str name="hl.snippets">3</str>
>       <str name="hl.fragsize">100</str>
>       <str name="hl.regex.slop">0.5</str>
>       <str name="hl.regex.pattern">\w[-\w ,/\n\"']{50,150}</str>
>     </lst>
>   </fragmenter>
> </highlighting>
>
> And here is the param list returned to me:
>
> <lst name="params">
> <str name="echoParams">all</str>
> <str name="tie">0.01</str>
> <str name="hl.fragmenter">regex</str>
> <str name="f.page_title.hl.fragsize">0</str>
> <str name="qf">body_text^1.0 page_title^1.6 meta_desc^1.3</str>
> <str name="f.meta_desc.hl.fragsize">0</str>
> <str name="q.alt">*:*</str>
> <str name="hl.fl">page_title,body_text</str>
> <str name="defType">dismax</str>
> <str name="echoParams">all</str>
> <str name="fl">url,urlmd5,page_title,score</str>
> <str name="q">java</str>
> <str name="hl">true</str>
> <str name="rows">50</str>
> </lst>
>
> So it seems like everything is working except for the highlighter. I should
> mention that when I enter a bogus fragmenter as a parameter (e.g.
> hl.fragmenter=bogus), it returns a 400 error that the fragmenter cannot be
> found, so the config file _is_ finding the regex fragmenter. It just doesn't
> seem to actually be including its parameters... Any ideas are appreciated,
> thanks again for the help.
>
> Mark
>
>
>
> On Mon, Dec 15, 2008 at 4:23 PM, Yonik Seeley <ysee...@gmail.com> wrote:
>
>> Try adding echoParams=all to your query to verify the params that the
>> solr request handler is getting.
>>
>> -Yonik
>>
>> On Mon, Dec 15, 2008 at 6:10 PM, Mark Ferguson
>> <mark.a.fergu...@gmail.com> wrote:
>> > Hello,
>> >
>> > In my solrconfig.xml file I am setting the attribute hl.snippets to 3.
>> When
>> > I perform a search, it returns only a single snippet for each
>> highlighted
>> > field. However, when I set the hl.snippets field manually as a search
>> > parameter, I get up to 3 highlighted snippets. This is the configuration
>> > that I am using to set the highlighted parameters:
>> >
>> > <fragmenter name="regex"
>> class="org.apache.solr.highlight.RegexFragmenter"
>> > default="true">
>> >    <lst name="defaults">
>> >      <str name="hl.snippets">3</str>
>> >      <str name="hl.fragsize">100</str>
>> >      <str name="hl.regex.slop">0.5</str>
>> >      <str name="hl.regex.pattern">\w[-\w ,/\n\"']{50,150}</str>
>> >    </lst>
>> > </fragmenter>
>> >
>> > I tried setting hl.fragmenter=regex as a parameter as well, to be sure
>> that
>> > it was using the correct one, and the result set is the same. Any ideas
>> what
>> > could be causing this attribute not to be read? It has me concerned that
>> > other attributes are being ignored as well.
>> >
>> > Thanks,
>> >
>> > Mark Ferguson
>> >
>>
>
>

Reply via email to