[ https://issues.apache.org/jira/browse/SOLR-8082?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Steve Rowe updated SOLR-8082: ----------------------------- Attachment: SOLR-8082.patch Patch with a few minor cleanups: * In {{TrieField.getRangeQueryForFloatDoubleDocValues()}}: ** Made constants for invariants (bits for infinities and zeros), in case the compiler isn't smart enough to do that. ** Added parens in a couple of expressions to improve legibility. * In {{DocValuesTest}}: ** In {{testFloatAndDoubleRangeQueryRandom()}}: *** Converted several {{fieldName\[i].equals("floatdv") ? ... : ...}} trinary operators to use (float,double) tuples (like the other values in this test), using lambdas. ** In {{testFloatAndDoubleRangeQuery()}}: *** {{negativeInfinity\[1]}} fixed: Float->Double * bq. +1 to fixing the issue for 6.0 with the current patch (except for the stale comment {{If min is negative (or -0d) and max is positive (or +0d), then issue two range queries}}, which was left over an older patch). ** The patch fixes this too: {{s/two range queries/FunctionRangeQuery/}} I'll commit tomorrow if no objections and nobody else gets to it first. > can't query against negative float or double values when indexed="false" > docValues="true" multiValued="false" > ------------------------------------------------------------------------------------------------------------- > > Key: SOLR-8082 > URL: https://issues.apache.org/jira/browse/SOLR-8082 > Project: Solr > Issue Type: Bug > Reporter: Hoss Man > Priority: Blocker > Fix For: 6.0 > > Attachments: SOLR-8082.patch, SOLR-8082.patch, SOLR-8082.patch, > SOLR-8082.patch, SOLR-8082.patch, SOLR-8082.patch, SOLR-8082.patch, > SOLR-8082.patch > > > 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... > {noformat} > $ 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":[] > }} > {noformat} > Explicit range queries (which is how numeric "field" queries are implemented > under the cover) are equally problematic... > {noformat} > $ 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":[] > }} > {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org