Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-7412

range.facet.other produces incorrect counts in distributed search

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 5.2, 6.0
    • None
    • None

    Description

      Reported by Will Miller in the users list:

      This first query is against node1 with distrib=false:

      http://localhost:8983/solr/gettingstarted/select/?q=*:*&wt=json&indent=true&distrib=false&facet=true&facet.range=price&f.price.facet.range.start=0.00&f.price.facet.range.end=100.00&f.price.facet.range.gap=20&f.price.facet.range.other=all&defType=edismax&q.op=AND

      There are 7 Results (results ommited).
      "facet_ranges":{
      "price":{
      "counts":[
      "0.0",1,
      "20.0",0,
      "40.0",0,
      "60.0",0,
      "80.0",1],
      "gap":20.0,
      "start":0.0,
      "end":100.0,
      "before":0,
      "after":5,
      "between":2}},

      This second query is against node2 with distrib=false:
      http://localhost:7574/solr/gettingstarted/select/?q=*:*&wt=json&indent=true&distrib=false&facet=true&facet.range=price&f.price.facet.range.start=0.00&f.price.facet.range.end=100.00&f.price.facet.range.gap=20&f.price.facet.range.other=all&defType=edismax&q.op=AND

      7 Results (one product does not have a price):
      "facet_ranges":{
      "price":{
      "counts":[
      "0.0",1,
      "20.0",0,
      "40.0",0,
      "60.0",1,
      "80.0",0],
      "gap":20.0,
      "start":0.0,
      "end":100.0,
      "before":0,
      "after":4,
      "between":2}},

      Finally querying the entire collection:
      http://localhost:7574/solr/gettingstarted/select/?q=*:*&wt=json&indent=true&facet=true&facet.range=price&f.price.facet.range.start=0.00&f.price.facet.range.end=100.00&f.price.facet.range.gap=20&f.price.facet.range.other=all&defType=edismax&q.op=AND

      14 results (one without a price range):
      "facet_ranges":{
      "price":{
      "counts":[
      "0.0",2,
      "20.0",0,
      "40.0",0,
      "60.0",1,
      "80.0",1],
      "gap":20.0,
      "start":0.0,
      "end":100.0,
      "before":0,
      "after":5,
      "between":2}},

      Notice that both the "after" and the "between" are wrong here. The actual buckets do correctly represent the right values but I would expect "between" to be 5 and "after" to be 13.

      Attachments

        1. SOLR-7412.patch
          8 kB
          Tomas Eduardo Fernandez Lobbe
        2. SOLR-7412.patch
          4 kB
          Tomas Eduardo Fernandez Lobbe

        Issue Links

          Activity

            People

              tflobbe Tomas Eduardo Fernandez Lobbe
              tflobbe Tomas Eduardo Fernandez Lobbe
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: