Hi, Chris, thanks for suggestions.

q=ipod&bq={!dismax qf=userId^0.5 v=$qq}&qq=12345&qt=dismax

I've tried your suggested query above, unfortunately, it does not work out.
I glanced a bit on the error message, the "Infinite Recursion" error seems
that dismax query parser are adding bq multiple times.

*org.apache.lucene.queryParser.ParseException: Infinite Recursion detected
> parsing query '1014546').*
>         at
> org.apache.solr.search.DisMaxQParser.parse(DisMaxQParser.java:75)
>         at
> org.apache.solr.search.DisMaxQParser.addBoostQuery(DisMaxQParser.java:107)
>         at
> org.apache.solr.search.DisMaxQParser.parse(DisMaxQParser.java:75)
>         at
> org.apache.solr.search.DisMaxQParser.addBoostQuery(DisMaxQParser.java:107)
>         at
> org.apache.solr.search.DisMaxQParser.parse(DisMaxQParser.java:75)
>         at
> org.apache.solr.search.DisMaxQParser.addBoostQuery(DisMaxQParser.java:107)
>         at
> org.apache.solr.search.DisMaxQParser.parse(DisMaxQParser.java:75)
>         at
> org.apache.solr.search.DisMaxQParser.addBoostQuery(DisMaxQParser.java:107)
>

2010/1/27 Chris Hostetter <hossman_luc...@fucit.org>

>
> : My original query is:
> : http://myhost:8080/solr/select?q=ipod&*bq=userId:12345^0.5*
> :
> &fq=&start=0&rows=10&fl=*%2Cscore&qt=dismax&wt=standard&debugQuery=on&explainOther=&hl.fl=
>
> : But I would like to place bq phrase in the default solrconfig.xml
> : configuration to make the query string more brief, so I did the
> following?
> : 
> http://myhost:8080/solr/select?q=ipod&*bq={!field<http://myhost:8080/solr/select?q=ipod&*bq=%7B%21field>f=userId
>  v=$qq}&qq=12345*
>
> : However, filedQueryParser doesn't accespt a boost parameter, then what
> shall
>
> ...the issue is not that "filedQueryParser doesn't accespt a boost
> parameter" the problem is that the weight syntax from your orriginal bq
> (the "^0.5" part) is actaul syntax from the standard parser -- and you
> arent' using tha parser any more (the distinction between query syntax and
> params is significant)
>
> I haven't tried this, but i think it might do what you want...
>
> q=ipod&bq={!dismax qf=userId^0.5 v=$qq}&qq=12345&qt=dismax
>
> ...but you might have to put other blank params inside that {!dismax}
> block to keep them from getting inherited formthe outer query (i can't
> remember how that logic works off the top of my head)
>
>
> -Hoss
>
>


-- 
梅旺生

Reply via email to