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

can't query against negative float or double values when indexed="false" docValues="true" multiValued="false"

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Blocker
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 5.5.1, 5.6, 6.0, 6.1, 7.0
    • Component/s: None
    • Labels:
      None

      Description

      Haven't dug into this yet, but something is evidently wrong in how the DocValues based queries get build for single valued float or double fields when negative numbers are involved.

      Steps to reproduce...

      $ bin/solr -e schemaless -noprompt
      ...
      $ curl -X POST -H 'Content-type:application/json' --data-binary '{ "add-field":{ "name":"f_dv_multi", "type":"tfloat", "stored":"true", "indexed":"false", "docValues":"true", "multiValued":"true" }, "add-field":{ "name":"f_dv_single", "type":"tfloat", "stored":"true", "indexed":"false", "docValues":"true", "multiValued":"false" } }' http://localhost:8983/solr/gettingstarted/schema
      {
        "responseHeader":{
          "status":0,
          "QTime":84}}
      $ curl -X POST -H 'Content-type:application/json' --data-binary '[{"id":"test", "f_dv_multi":-4.3, "f_dv_single":-4.3}]' 'http://localhost:8983/solr/gettingstarted/update/json/docs?commit=true'
      {"responseHeader":{"status":0,"QTime":57}}
      $ curl 'http://localhost:8983/solr/gettingstarted/query?q=f_dv_multi:"-4.3"'
      {
        "responseHeader":{
          "status":0,
          "QTime":5,
          "params":{
            "q":"f_dv_multi:\"-4.3\""}},
        "response":{"numFound":1,"start":0,"docs":[
            {
              "id":"test",
              "f_dv_multi":[-4.3],
              "f_dv_single":-4.3,
              "_version_":1512962117004689408}]
        }}
      $ curl 'http://localhost:8983/solr/gettingstarted/query?q=f_dv_single:"-4.3"'
      {
        "responseHeader":{
          "status":0,
          "QTime":5,
          "params":{
            "q":"f_dv_single:\"-4.3\""}},
        "response":{"numFound":0,"start":0,"docs":[]
        }}
      

      Explicit range queries (which is how numeric "field" queries are implemented under the cover) are equally problematic...

      $ curl 'http://localhost:8983/solr/gettingstarted/query?q=f_dv_multi:%5B-4.3+TO+-4.3%5D'
      {
        "responseHeader":{
          "status":0,
          "QTime":0,
          "params":{
            "q":"f_dv_multi:[-4.3 TO -4.3]"}},
        "response":{"numFound":1,"start":0,"docs":[
            {
              "id":"test",
              "f_dv_multi":[-4.3],
              "f_dv_single":-4.3,
              "_version_":1512962117004689408}]
        }}
      $ curl 'http://localhost:8983/solr/gettingstarted/query?q=f_dv_single:%5B-4.3+TO+-4.3%5D'
      {
        "responseHeader":{
          "status":0,
          "QTime":0,
          "params":{
            "q":"f_dv_single:[-4.3 TO -4.3]"}},
        "response":{"numFound":0,"start":0,"docs":[]
        }}
      

        Attachments

        1. SOLR-8082.patch
          34 kB
          Steve Rowe
        2. SOLR-8082.patch
          34 kB
          Yonik Seeley
        3. SOLR-8082.patch
          33 kB
          Ishan Chattopadhyaya
        4. SOLR-8082.patch
          20 kB
          Ishan Chattopadhyaya
        5. SOLR-8082.patch
          19 kB
          Ishan Chattopadhyaya
        6. SOLR-8082.patch
          19 kB
          Ishan Chattopadhyaya
        7. SOLR-8082.patch
          16 kB
          Ishan Chattopadhyaya
        8. SOLR-8082.patch
          10 kB
          Hoss Man

          Issue Links

            Activity

              People

              • Assignee:
                steve_rowe Steve Rowe
                Reporter:
                hossman Hoss Man
              • Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: