: Can I expect the FieldCache of Lucene to return the correct values when : working : with TrieField with the precisionStep higher than 0. If not, what did I get : wrong?
Yes -- the code for building FieldCaches from Trie fields is smart enough to ensure that only the "real" original values are used to populate the Cache (See for example: FieldCache.NUMERIC_UTILS_INT_PARSER and the classes linked to from it's javadocs... https://lucene.apache.org/core/4_4_0/core/org/apache/lucene/search/FieldCache.html#NUMERIC_UTILS_INT_PARSER https://lucene.apache.org/core/4_4_0/core/org/apache/lucene/util/NumericUtils.html https://lucene.apache.org/core/4_4_0/core/org/apache/lucene/document/IntField.html (Solr's Trie fields are backed by the various numeric fields in lucene -- ie: solr:TrieIntField -> lucene:IntField. the "Trie*" prefix is used in solr because there already had classes named IntField, DoubleField, etc... when the Trie based impls where added to lucene) -Hoss