You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "alex (JIRA)" <ji...@apache.org> on 2009/05/21 02:21:45 UTC
[jira] Created: (LUCENE-1649) numerical problem associated with
CustomScoreQuery, ValueSourceQuery
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-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-dev-help@lucene.apache.org