Solr7.4.0报错org.apache.solr.common.SolrException

文章目录

  • [org.apache.solr.common.SolrException: Exception writing document id MATERIAL-99598435990497269125316 to the index; possible analysis error: cannot change DocValues type from NUMERIC to SORTED_NUMERIC for field "opt_time"](#org.apache.solr.common.SolrException: Exception writing document id MATERIAL-99598435990497269125316 to the index; possible analysis error: cannot change DocValues type from NUMERIC to SORTED_NUMERIC for field "opt_time")
  • [Exception writing document id MATERIAL-43619171460367415133741 to the index; possible analysis error: cannot change DocValues type from NUMERIC to SORTED_NUMERIC for field "opt_time"](#Exception writing document id MATERIAL-43619171460367415133741 to the index; possible analysis error: cannot change DocValues type from NUMERIC to SORTED_NUMERIC for field "opt_time")

org.apache.solr.common.SolrException: Exception writing document id MATERIAL-99598435990497269125316 to the index; possible analysis error: cannot change DocValues type from NUMERIC to SORTED_NUMERIC for field "opt_time"

查看当前字段定义:

sh 复制代码
curl http://localhost:8983/solr/your_core/schema/fields/opt_time

请将 your_core 替换为你的Solr核心名称

删除旧字段定义:

sh 复制代码
curl -X DELETE http://localhost:8983/solr/your_core/schema/fields/opt_time

可以使用 web 页面删除

重新定义字段:

sh 复制代码
curl -X POST -H 'Content-type:application/json' --data-binary '{
  "add-field": {
    "name": "opt_time",
    "type": "pdate",
    "indexed": true,
    "stored": true,
    "docValues": true,
    "multiValued": false
  }
}' http://localhost:8983/solr/your_core/schema

Exception writing document id MATERIAL-43619171460367415133741 to the index; possible analysis error: cannot change DocValues type from NUMERIC to SORTED_NUMERIC for field "opt_time"

这个错误信息表明在使用 SolrJ 客户端向 Solr 服务器发送文档时遇到了问题。具体错误是尝试将字段 "opt_time" 的 DocValues 类型从 NUMERIC 更改为 SORTED_NUMERIC,这在 Solr 中是不允许的。

首先,你需要检查 Solr 的 managed-schema 或 schema.xml 文件中字段 "opt_time" 的定义。如果你使用的是 managed-schema,你可以通过 Solr 的管理界面或使用 Schema API 来查看字段定义。

更新字段定义

如果 "opt_time" 字段的 DocValues 类型确实需要是 SORTED_NUMERIC,而当前设置为 NUMERIC,你需要更新字段定义。这可以通过 Schema API 来完成。例如,你可以发送一个 POST 请求来更新字段定义:

sh 复制代码
curl -X POST -H 'Content-type:application/json' --data-binary '{
  "update-field": {
    "name": "opt_time",
    "type": "pdate",
    "indexed": true,
    "stored": true,
    "docValues": "SORTED_NUMERIC",
    "multiValued": false
  }
}' http://localhost:8983/solr/your_core/schema

这里使用的是 update-field如果不行,可以删除掉out_time,使用 add-field来添加

sh 复制代码
curl -X POST -H 'Content-type:application/json' --data-binary '{
  "add-field": {
    "name": "opt_time",
    "type": "pdate",
    "indexed": true,
    "stored": true,
    "docValues": "SORTED_NUMERIC",
    "multiValued": false
  }
}' http://admin:Oi2a@172.111.111.182:8983/solr/2-testcore/schema
相关推荐
Elastic 中国社区官方博客12 天前
Elasticsearch:优化的标量量化 - 更好的二进制量化
大数据·人工智能·elasticsearch·搜索引擎·ai·全文检索·lucene
幽兰的天空18 天前
推荐一些关于C#中LINQ的学习资料
c#·solr·linq
Elastic 中国社区官方博客19 天前
Elasticsearch:Lucene 2024 年回顾
大数据·人工智能·后端·elasticsearch·搜索引擎·全文检索·lucene
cdg==吃蛋糕21 天前
solr8加鉴权
chrome·json·solr
Elastic 中国社区官方博客25 天前
Lucene 漏洞历险记:修复损坏的索引异常
大数据·elasticsearch·搜索引擎·全文检索·lucene·全文搜索
鱼香鱼香rose1 个月前
面经zhenyq
搜索引擎·全文检索·lucene
ccc_9wy1 个月前
Apache Solr XXE(CVE-2017-12629)--vulhub
apache·solr·lucene·xxe·ssrf·vulhub·cve-2017-12629
ccc_9wy1 个月前
Apache Solr RCE(CVE-2017-12629)--vulhub
apache·solr·lucene·burp suite·vulhub·远程命令执行漏洞rce·cve-2017-12629
ccc_9wy1 个月前
Apache Solr RCE(CVE-2019-0193)--vulhub
网络安全·apache·solr·lucene·vulhub·cve-2019-0193·远程命令执行漏洞rce
网络安全-杰克1 个月前
Apache solr XML 实体注入漏洞
xml·apache·solr