Interesting.... I don't recall a bug like that being fixed.
Anyway, glad it works for you now!
-Yonik


On Thu, Dec 15, 2016 at 11:01 AM, Chantal Ackermann
<c.ackerm...@it-agenten.com> wrote:
> 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