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 >