Hi,
I am trying to following add document (value for price.long is
Long.MAX_VALUE)

  <doc>
        <field name="id">411</field>
        <field name="name">one</field>
        <field name="price.long">9223372036854775807</field>
    </doc>

However upon querying my collection value I get back for "price.long" is
9223372036854776000

Definition for 'price.long' field and 'long' look like following

<field name="price.long" type="long" indexed="true" stored="true" />
<fieldType name="long" class="solr.TrieLongField" precisionStep="0"
positionIncrementGap="0"/>

My test case shows that MAX Value Solr can store without losing precision
is  18014398509481982. This is equivalent to ('Long.MAX_VALUE >> 9) - 1'
 (Not really sure if this computation really means something).


Can someone help to understand why TrieLong can't accept values >
18014398509481982

Reply via email to