Hi Yonik,

after upgrading to Solr 6.3.0, the nested function works as expected! (Both 
with and without docValues.)

"facets":{
    "count":3179500,
    "all_pop":1.5901646171168616E8,
    "shop_cat":{
      "buckets":[{
          "val":"Kontaktlinsen > Torische Linsen",
          "count":75168,
          "cat_sum":3752665.0497611803},


Thanks,
Chantal


> Am 15.12.2016 um 16:00 schrieb Chantal Ackermann <c.ackerm...@it-agenten.com>:
> 
> Hi Yonik,
> 
> are you certain that nesting a function works as documented on 
> http://yonik.com/solr-subfacets/?
> 
> top_authors:{ 
>        type: terms,
>        field: author,
>        limit: 7,
>        sort: "revenue desc",
>        facet:{
>          revenue: "sum(sales)"
>        }
>      }
> 
> 
> I’m getting the feeling that the function is never really executed because, 
> for my index, calling sum() with a non-number field (e.g. a multi-valued 
> string field) throws an error when *not nested* but does *not throw an error* 
> when nested:
> 
>    json.facet={all_pop: "sum(gtin)“}
> 
>    "error":{
>        "trace":“java.lang.UnsupportedOperationException
>           at 
> org.apache.lucene.queries.function.FunctionValues.doubleVal(FunctionValues.java:47)
> 
> And the following does not throw an error but definitely should if the 
> function would be executed:
> 
>    json.facet={all_pop:"sum(popularity)",shop_cat: {type:terms, 
> field:shop_cat, facet: {cat_pop:"sum(gtin)"}}}
> 
> returns:
> 
> "facets":{
>    "count":2815500,
>    "all_pop":1.4065865823321116E8,
>    "shop_cat":{
>      "buckets":[{
>          "val":"Kontaktlinsen > Torische Linsen",
>          "count":75168,
>          "cat_pop":0.0},
>        {
>          "val":"Damen-Mode/Inspirationen",
>          "count":47053,
>          "cat_pop":0.0},
> 
> For completeness: here is the field directive for „gtin“ with 
> „text_noleadzero“ based on „solr.TextField“:
> 
>    <field name="gtin" type="text_noleadzero" indexed="true" stored="true" 
> required="false" multiValued="true“/>
> 
> 
> Is this a bug or is the documentation a glimpse of the future? I will try 
> version 6.3.0, now. I was still on 6.1.0 for the above tests.
> (I have also tried with the „avg“ function, just to make sure, but same 
> there.)
> 
> Cheers,
> Chantal

Reply via email to