solr increase number of digits that tint fields can store
Question
I have a price
field of type tint
, from which I will generate a range facet
.
And I have now some items in my index
that exceed tint
type limit (max integer).
How do I increase tint
max integer value
?
Here is tint
definition in schema.xml
:
<fieldType name="tint" class="solr.TrieIntField" precisionStep="8" positionIncrementGap="0"/>
Do I have to increase precisionStep=8
? because an error occured when trying to insert a number whose the # of digits = 10
La solution
You cannot insert a integer value which is larger than Java's Integer.MAX_VALUE
into a TrieIntField. Simply because it is a wrapper around it. You cannot do this. Technically not possible. Referring to the documentation possible is
A numeric field that can contain 32-bit signed two's complement integer values.
- Min Value Allowed: -2147483648
- Max Value Allowed: 2147483647
Nothing more, nothing less.
You could switch to solr.TrieLongField instead, if the following limits are OK for you
A numeric field that can contain 64-bit signed two's complement integer values.
- Min Value Allowed: -9223372036854775808
- Max Value Allowed: 9223372036854775807