I think the space between "with" and "color" may be messing up the bf arg parser. Try a single term in the query, just to see if that's it.

-- Jack Krupansky

-----Original Message----- From: Anatoli Matuskova
Sent: Monday, January 21, 2013 8:39 PM
To: solr-user@lucene.apache.org
Subject: Re: bf, nested queries and local params

Getting closer:
q=table&bf=product(scale(query({!v='with color'}),0,1),100)

I was expecting to get the score from query({!v='with color'}) so the scale
would look like (this is just an example in a document):

scale(8.3343252,0,1)

But its not working like that, I'm getting the error:

<lst name="error">
<str name="msg">
org.apache.lucene.search.TermQuery$TermWeight cannot be cast to
org.apache.lucene.queries.function.valuesource.ScaleFloatFunction$ScaleInfo
</str>
<str name="trace">
java.lang.ClassCastException: org.apache.lucene.search.TermQuery$TermWeight
cannot be cast to
org.apache.lucene.queries.function.valuesource.ScaleFloatFunction$ScaleInfo
at
org.apache.lucene.queries.function.valuesource.ScaleFloatFunction.getValues(ScaleFloatFunction.java:103)
at
org.apache.lucene.queries.function.valuesource.MultiFloatFunction.getValues(MultiFloatFunction.java:65)
at
org.apache.lucene.queries.function.FunctionQuery$AllScorer.<init>(FunctionQuery.java:120)
at
org.apache.lucene.queries.function.FunctionQuery$FunctionWeight.scorer(FunctionQuery.java:95)
at
org.apache.lucene.search.BooleanQuery$BooleanWeight.scorer(BooleanQuery.java:318)
at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:589) at
org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:280) at
org.apache.solr.search.SolrIndexSearcher.getDocListAndSetNC(SolrIndexSearcher.java:1536)
at
org.apache.solr.search.SolrIndexSearcher.getDocListC(SolrIndexSearcher.java:1265)
at
org.apache.solr.search.SolrIndexSearcher.search(SolrIndexSearcher.java:385)
at
org.apache.solr.handler.component.QueryComponent.process(QueryComponent.java:419)
at
org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:204)
at
org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:129)
at org.apache.solr.core.SolrCore.execute(SolrCore.java:1555) at
org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:442)
at
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:263)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:662)
</str>
<int name="code">500</int>
</lst>
</response>

Any help?



--
View this message in context: http://lucene.472066.n3.nabble.com/bf-nested-queries-and-local-params-tp4035216p4035226.html Sent from the Solr - User mailing list archive at Nabble.com.

Reply via email to