numerical problem associated with CustomScoreQuery, ValueSourceQuery
--------------------------------------------------------------------

                 Key: LUCENE-1649
                 URL: https://issues.apache.org/jira/browse/LUCENE-1649
             Project: Lucene - Java
          Issue Type: Bug
          Components: Search
    Affects Versions: 2.4.1
         Environment: OpenSuse 10.3  32bit kernel , JDK 1.6.0_13, Pentium D 
3.2GHz
            Reporter: alex


float type computation used in subclasses of FieldCacheSource ,ValueSourceQuery 
, will cause numerical error when moderately large int values were supplied in 
a field. 
For example, consider a document with a field parsable as integer with the 
value 24118569
During scoring, a cast will be performed like so, (float) 24118569, in order to 
get the float representation of the field. 
In this case the value is turned into 24118568.0. If this value is then used to 
lookup a database the result will be incorrect even if we 
cast it back to an integer. 


my temporal resolution to this problem is by attaching the int[] array from 
lucene's internal cache to the query object through reflection, 
and perform the value lookup myself with docid. Clearly , this is not optimal . 



-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: java-dev-h...@lucene.apache.org

Reply via email to