ES错误修复-client读取timeout-all shards failed

ES错误修复-client读取timeout

报错前环境及现象

  • 有一个node机器中断过几个小时服务
  • 客户端在某段时间内无任何操作后会报timeou错
  • es以及client版本都是7.6.2
  • 推断是shard出了问题
  • 报错信息
[Failed to execute phase [query], all shards failed]
  • 代码段分析:

org.elasticsearch.client.RestClient里的246行,看方法会在向ES集群指定节点发送请求失败后,尝试向其他节点发送请求,都失败后会抛出IOException,以下的修复只针对自己遇见的这问题,但这个报错不仅限于该情况。

修复

  • 重置索引:
 curl -XPUT 'xx.xx.xx.xx:9200/*/_settings' -d ' { "index" : { "number_of_replicas" : 0 } } '
PUT /*/_settings 
{ 
  "index" : { "number_of_replicas" : 0 }  
}
  • 官方参考链接:
https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-update-settings.html#update-index-settings-api-query-params
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值