多模块项目使用ElasticSearch报错
【摘要】 多模块项目使用ElasticSearch报错
@[TOC]
情况1:启动报错
maven包引入问题ClassNotFoundException: org.elasticsearch.client.Cancellable
原因:父pom引入ES 版本了,导致版本冲突
解决方案:修改父pom的ES的版本即可启动成功
情况2:java.lang.NoSuchMethodError: org.elasticsearch.action.index.IndexRequest.ifSeqNo()J
原因:有一种说法说jar里的Elasticsearch版本有错,要移除了再重新引入?答案待确定
解决办法:添加即可
情况3:java.lang.ClassNotFoundException: org.elasticsearch.client.indices.GetIndexRequest
原因:项目有两个子model,每个model都有一个注入es client的bean,这就造成一个项目里es有两套,肯定会有一个被覆盖
解决办法:统一即可
情况4:xx contains unrecognized parameter: [ccs_minimize_roundtrips]]
“message”: "Elasticsearch exception [type=illegal_argument_exception, reason=request [/12_assets_directory_v1/_doc/_search] contains unrecognized parameter: [ccs_minimize_roundtrips]]
原因:ES版本不一致造成的
解决办法:找到索引引用ES的地方,确认版本一致
情况5:I/O reactor terminated abnormally
RestHighLevelClient请求ES报错 ↓
可能原因:
原因1:http/tcp建立连接请求太多,导致请求加不进去了
原因2:es内存不够用了,导致请求加不进去了
解决办法:重启ES或者增大内存
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)