如何修复DSpace 6.3的org.apache.solr.client.solrj.impl.HttpSolrServer$RemoteSolrException报错
DSpace 6.3
org.apache.solr.client.solrj.impl.HttpSolrServer$RemoteSolrException 报错排查解决方案 该异常为Solr服务端返回的错误,而非DSpace本地调用逻辑问题,需先获取Solr完整日志定位具体错误类型,再对应处理。DSpace 6.3默认Solr日志存储路径为[dspace安装目录]/solr/server/logs/solr.log,若使用Tomcat部署Solr也需同步查看Tomcat运行日志。
常见报错场景及解决方法
- 索引损坏类错误
日志特征:出现CorruptIndexException、无法读取索引类提示,多由意外断电、磁盘写满、服务异常中断导致
处理步骤:- 停止DSpace与Solr服务
- 备份现有索引目录,默认路径为
[dspace安装目录]/solr/search/data/index/ - 执行全量索引重建命令:
[dspace安装目录]/bin/dspace index-discovery -f - 重启Solr与DSpace服务验证
- Solr服务连通性错误
日志特征:出现Connection refused、连接超时提示
处理步骤:- 验证Solr服务运行状态:Solr默认监听8983端口,执行
curl http://localhost:8983/solr/检查是否正常返回响应 - 检查DSpace Solr配置:打开
[dspace安装目录]/config/modules/discovery.cfg,确认solr.server参数的地址、端口、路径与实际Solr部署信息一致 - 分布式部署场景下需检查服务器防火墙规则,确保DSpace所在服务器可正常访问Solr服务端口
- 验证Solr服务运行状态:Solr默认监听8983端口,执行
- 权限类错误
日志特征:出现401 Unauthorized、403 Forbidden提示
处理步骤:- 若Solr开启了身份认证,需确认DSpace配置中已填写正确的访问账号密码
- 确认运行Solr服务的系统用户对
[dspace安装目录]/solr/目录拥有读写权限
- Schema配置不匹配错误
日志特征:出现unknown field、字段添加失败类提示,多由升级DSpace、修改元数据配置后未同步更新Solr schema文件导致
处理步骤:- 将
[dspace安装目录]/solr/search/conf/schema.xml与DSpace 6.3官方对应版本的schema文件比对,补全缺失的字段配置 - 重启Solr后执行全量索引重建:
[dspace安装目录]/bin/dspace index-discovery -f
- 将
验证方法
配置调整完成后,先访问Solr后台查询页面手动执行查询确认服务正常,再触发DSpace的搜索、成果提交功能验证报错是否解决。
内容的提问来源于stack exchange,提问作者Getie wagaye
相关产品推荐
相关产品推荐

