1

我有一个price类型的字段tint,我将从中生成一个range facet.
我现在有一些index超出tint类型限制(最大整数)的项目。
我如何增加tint max integer value

这里是tint定义schema.xml

<fieldType name="tint" class="solr.TrieIntField" precisionStep="8" positionIncrementGap="0"/>

我必须增加precisionStep=8吗?因为尝试插入一个数字时发生错误# of digits = 10

4

1 回答 1

1

您不能将大于 Java 的整数值插入Integer.MAX_VALUETrieIntField。仅仅因为它是它的包装器。你不能做这个。技术上不可能。参考文档可能是

可以包含 32 位带符号二进制补码整数值的数字字段。

  • 允许的最小值:-2147483648
  • 允许的最大值:2147483647

不多也不少。


如果以下限制适合您,您可以改用solr.TrieLongField

可以包含 64 位带符号二进制补码整数值的数字字段。

  • 允许的最小值:-9223372036854775808
  • 允许的最大值:9223372036854775807
于 2014-01-09T15:13:57.630 回答