[ https://issues.apache.org/jira/browse/SOLR-8082?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15199538#comment-15199538 ]
Yonik Seeley edited comment on SOLR-8082 at 3/17/16 1:52 PM: ------------------------------------------------------------- Building a boolean query is the slowest option of all (will look up all the values twice and has overhead)... coverting to a float/double would be faster (that should actually be a no-op... so it would be down to how fast the floating point comparisons are vs long comparisons). If we did want to keep things in "long" space rather than converting, then perhaps just create our own version that does an additional comparison when needed. I was going to suggest that we could also just try the built-in range support in valuesource FunctionValues.getRangeScorer()... but I forgot to bring back the "only match docs with a value" patch from heliosearch. was (Author: ysee...@gmail.com): Building a boolean query is the slowest option of all (will look up all the values twice and has overhead)... coverting to a float/double would be faster (that should actually be a no-op... so it would be down to how fast the floating point comparisons are vs long comparisons). If we did want to keep things in "long" space rather than converting, then perhaps just create our own version that does an additional comparison when needed. > 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 > Attachments: 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