lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sujit Pal (Commented) (JIRA)" <>
Subject [jira] [Commented] (SOLR-3163) FacetComponent returns list of alternate name, value instead of map for counts in JSON responses
Date Sat, 25 Feb 2012 18:27:48 GMT


Sujit Pal commented on SOLR-3163:

Ok, I understand. I already have a workaround to parse the NamedList as it is, so I am not
blocked. Just seemed inconsistent, but now I understand why. And for those that need it, one
can probably use the parameter. Shall I close the bug?

> FacetComponent returns list of alternate name, value instead of map for counts in JSON
> ------------------------------------------------------------------------------------------------
>                 Key: SOLR-3163
>                 URL:
>             Project: Solr
>          Issue Type: Bug
>          Components: SearchComponents - other
>    Affects Versions: 3.5
>            Reporter: Sujit Pal
>            Priority: Minor
>              Labels: facet
> Facet counts for facet.field come back in JSON format like this (a list of name and values,
where even positions are keys and odd positions are values).
> {quote}
>   "facet_counts":{
>     "facet_fields":{
>       "u_idx":[
>         "section",39663,
>         "adam",6211,
>         "image",3840,
>         "slideshow",2480],
>       ...
> {quote}
> unlike facet.query facet counts, which come back like this (a map of name value pairs).
> {quote}
>     "facet_queries":{
>       "u_reviewdate:[NOW-6MONTH TO NOW]":42,
>       "u_reviewdate:[NOW-1YEAR TO NOW-6MONTHS]":1561,
>       "u_reviewdate:[NOW-2YEAR TO NOW-1YEAR]":3017,
>       "u_reviewdate:[NOW-5YEAR TO NOW-2YEAR]":1538,
>       "u_reviewdate:[NOW-100YEAR TO NOW-5YEAR]":47},
> {quote}
> This is only for wt=json. With wt=xml, the two formats look similar.
> {quote}
> <lst name="facet_queries">
>   <int name="u_reviewdate:[NOW-6MONTH TO NOW]">42</int>
>   <int name="u_reviewdate:[NOW-1YEAR TO NOW-6MONTHS]">1561</int>
>   <int name="u_reviewdate:[NOW-2YEAR TO NOW-1YEAR]">3017</int>
>   <int name="u_reviewdate:[NOW-5YEAR TO NOW-2YEAR]">1538</int>
>   <int name="u_reviewdate:[NOW-100YEAR TO NOW-5YEAR]">47</int>
> </lst>
> <lst name="facet_fields">
>   <lst name="u_idx">
>     <int name="section">39663</int>
>     <int name="adam">6211</int>
>     <int name="image">3840</int>
>     <int name="slideshow">2480</int>
>   </lst>
> {quote}
> I believe this is because of the use of NamedList for this data structure in FacetCountsComponent,
SimpleOrderedMap should be used instead. This will produce results of facet_field counts like
a map in JSON format (and keep the XML output the same).
> {quote}
>   "facet_counts":{
>     "facet_fields":{
>       "u_idx":[
>         "section":39663,
>         "adam":6211,
>         "image":3840,
>         "slideshow":2480],
>       ...
> {quote}
> This makes it consistent across different kinds of facets and is easier to consume on
the client.
> There is the concern about backward compatibility (ie users are already consuming the
incorrect/inconsistent format so we can't change it), but if that is not as important as consistency
and ease of use, then I can supply a patch for this.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:!default.jspa
For more information on JIRA, see:


To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message