我们有时候很难将某些文件导入Solr。看起来某些文档有奇怪的 meta数据(值),不确定它是否来自古怪的文字处理器或其他东西。请看这里的两个例子:
Type: Solarium\Exception\HttpException
Message: Solr HTTP error: OK (400)
{"responseHeader":{"status":400,"QTime":49},"error":{"metadata":["error-class","org.apache.solr.common.SolrException","root-error-class","java.lang.NumberFormatException"],"msg":"ERROR: [doc=3932487729] Error adding field 'brightness_value'='6.18' msg=For input string: \"6.18\"","code":400}}
还有
Type: Solarium\Exception\HttpException
Severity: error --> Exception: Solr HTTP error: OK (400)
{"responseHeader":{"status":400,"QTime":72},"error":{"metadata":["error-class","org.apache.solr.common.SolrException","root-error-class","java.lang.NumberFormatException"],"msg":"ERROR: [doc=16996] Error adding field 'version'='5.3.1' msg=For input string: \"5.3.1\"","code":400}}
我们如何防止这些问题呢?我们无法控制文档,所以需要在服务器上修复它。
1条答案
按热度按时间8zzbczxx1#
在模式中显式定义字段类型,而不是依赖Solr为您创建字段类型-包含字段的第一个文档将使Solr猜测字段的类型,如果后面的文档不匹配相同的预期格式,您将得到如下错误。
在生产或实际应用程序中使用集合时,请始终为集合定义模式-无模式模式非常适合于原型制作和实验,但在实际应用程序中,您希望类型定义良好。