Yonik, Upayavira,
thanks for response. Here is the stacktrace from solr logs.
I can make my field single valued, but are there any plans to fix this or
in general mulitvalued fields should not be used for metric calculation ?
what about other metrics, e.g. avg, min,max -- should I be able to
calculate them on multivalued fields?

org.apache.solr.common.SolrException: can not use FieldCache on
multivalued field: sales
        at 
org.apache.solr.schema.SchemaField.checkFieldCacheSource(SchemaField.java:187)
        at org.apache.solr.schema.TrieField.getValueSource(TrieField.java:236)
        at 
org.apache.solr.search.FunctionQParser.parseValueSource(FunctionQParser.java:378)
        at 
org.apache.solr.search.FunctionQParser.parseValueSource(FunctionQParser.java:235)
        at 
org.apache.solr.search.ValueSourceParser$79.parse(ValueSourceParser.java:832)
        at 
org.apache.solr.search.FunctionQParser.parseAgg(FunctionQParser.java:414)
        at 
org.apache.solr.search.facet.FacetParser.parseStringStat(FacetRequest.java:522)
        at 
org.apache.solr.search.facet.FacetParser.parseStringFacetOrStat(FacetRequest.java:515)
        at 
org.apache.solr.search.facet.FacetParser.parseFacetOrStat(FacetRequest.java:449)
        at 
org.apache.solr.search.facet.FacetParser.parseSubs(FacetRequest.java:429)
        at 
org.apache.solr.search.facet.FacetFieldParser.parse(FacetRequest.java:728)
        at 
org.apache.solr.search.facet.FacetParser.parseFieldFacet(FacetRequest.java:500)
        at 
org.apache.solr.search.facet.FacetParser.parseFacetOrStat(FacetRequest.java:486)
        at 
org.apache.solr.search.facet.FacetParser.parseFacetOrStat(FacetRequest.java:479)
        at 
org.apache.solr.search.facet.FacetParser.parseSubs(FacetRequest.java:429)
        at 
org.apache.solr.search.facet.FacetTopParser.parse(FacetRequest.java:646)
        at 
org.apache.solr.search.facet.FacetTopParser.parse(FacetRequest.java:635)
        at 
org.apache.solr.search.facet.FacetModule.prepare(FacetModule.java:125)
        at 
org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:229)
        at 
org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:143)
        at org.apache.solr.core.SolrCore.execute(SolrCore.java:2064)
        at org.apache.solr.servlet.HttpSolrCall.execute(HttpSolrCall.java:654)
        at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:450)
        at 
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:227)
        at 
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:196)
        at 
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
        at 
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
        at 
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
        at 
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
        at 
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
        at 
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
        at 
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
        at 
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
        at 
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
        at 
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
        at 
org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)
        at 
org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:110)
        at 
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
        at org.eclipse.jetty.server.Server.handle(Server.java:497)
        at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
        at 
org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
        at 
org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
        at 
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
        at 
org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
        at java.lang.Thread.run(Thread.java:745)


2015-07-13 19:24 GMT+03:00 Yonik Seeley <ysee...@gmail.com>:

> On Mon, Jul 13, 2015 at 1:55 AM, Iana Bondarska <yana2...@gmail.com>
> wrote:
> > Hi,
> > I'm using json query api for solr 5.2. When query for metrics for
> > multivalued fields, I get error:
> > can not use FieldCache on multivalued field: sales.
> >
> > I've found in solr wiki that to avoid using fieldcache I should set
> > facet.method parameter to "enum".
> > Now my question is how can I add facet.enum parameter to query?
> > My original query looks like this:
> >
> {"limit":0,"offset":0,"facet":{"facet":{"facet":{"mechanicnumbers_sum":"sum(sales)"},"limit":0,"field":"brand","type":"terms"}}}
>
> sum(field) is currently only implemented for single-valued numeric fields.
> Can you make the sales field single-valued, or do you actually need
> multiple values per document?
>
> -Yonik
>

Reply via email to