我的情况和解决方案

这种错误大概率是 ES 的查询语句语法错误,比如我当时是,时间筛选的条件的格式写错了,导致 ES 查询时解析错误,从而报了all shards failed [type=search_phase_execution_exception]这个错误

排查思路:先想办法把查询 DSL 语句打印出来,看下这个最终用来查询的 DSL 语句在语法上有没有问题,如果有问题就改正。

网上对于这个错误还有一些其他的原因,这里简单复制过来,方便以后遇到相同问题时查询使用

其他网友的情况和解决方案

当使用到term 查询的时候,由于是精准匹配,所以查询的关键字在 es 上的类型,必须是 keyword 而不能是 text,比如你的搜索条件是 “name”:”jack”,那么该 name 字段的 es 类型得是keyword,而不能是 text。比如下面是一个 DSL语句的例子,

解决方案一是修改 ES 的 mapping,把需要精准匹配的字段设置成 keyword 类型,

方案二是修改 DSL,让查询的字段类型按照 keyword 的方式来查询,query 里增加 .keyword 后缀。但是这种方案我都没有亲自实验过,不知道是否能真的解决问题,下次遇到了相同问题再来检验一下。

修改 DSL 中的语句,字段里增加.keyword 后缀。

在我们的Java 或者 Golang 代码中怎么修改呢?如下,加上".keyword"就可以了

Java 客户端

Golang 客户端

参考:已解决:Elasticsearch报错:exception [type=search_phase_execution_exception, reason=all shards failed]、all shards failed [type=search_phase_execution_exception]

ES 查询时提示:all shards failed [type=search_phase_execution_exception]相关推荐

  1. Navicat连接数据库成功,新建查询时提示错误“Cannot create file ……”

    Navicat连接数据库成功,新建查询时提示错误"Cannot create file --" 原因:编辑连接{高级}<设置位置>被修改,该oci.dll不正确 解决方 ...

  2. 安装cuda时 提示toolkit installation failed using unsupported compiler解决方法

    安装cuda时 提示toolkit installation failed using unsupported compiler解决方法 参考文章: (1)安装cuda时 提示toolkit inst ...

  3. 苹果开发者注册了邓白氏编码不能用,查询时提示该组织不存在怎么办?

    如果邓白氏编码通过了,但是在苹果开发者网站查询时提示该组织不存在,一般是因为法人实体(其实就是公司英文名称)不匹配.说明我们在申请邓白氏编码时,填入的法人实体发生了变化. 在网上搜索原因,很多都会说打 ...

  4. centos挂载硬盘时提示mount:unknown filesystem type 'LVM2_member'的解决方案

    我写博文主要是为了记录自己学习中遇到的问题 centos挂载硬盘时提示mount:unknown filesystem type 'LVM2_member'的解决方案 我的是因为重新挂载了LV后面再挂 ...

  5. Java操作es 查询时 [search_phase_execution_exception] all shards failed

    co.elastic.clients.elasticsearch._types.ElasticsearchException: [es/search] failed: [search_phase_ex ...

  6. 导入cx_Oracle时提示DLL load failed问题解决

    安装好cx_Oracle模块后,进行导入,提示:ImportError: DLL load failed: 找不到指定的模块. 解决方法, 1)将如下4个文件放置在环境变量path路径中: oci.d ...

  7. sqlserver 2012 查询时提示“目录名称无效”

    重装系统或者用360等软件清理了相应的临时文件导致 解决:在运行中输入 %temp% 回车,会跳出找不到路径的提示,然后到提示的目录建没有找到的目录文件夹即可.

  8. 从 github 执行 git clone 一个大的项目时提示 error: RPC failed

    目前克隆一个比较大的项目,出现RPC failed的错误 Cloning into 'bigfiles'... remote: Counting objects: 190, done. remote: ...

  9. 卸载VMware时提示“The MSI failed”

    1.清除注册表 开始→运行→regedit 点击[HKEY_LOCAL_MACHINE\Software\VMware,inc],把这个 VMware,inc 整个删除 2.停止服务 任务管理器→服务 ...

最新文章

  1. 线程同步机制有临界区、互斥、信号量优缺点
  2. GeneralList-广义表
  3. 阮一峰react demo代码研究的学习笔记 - demo 6 debug - how check works
  4. Linux kernel的中断子系统之(九):tasklet
  5. 官方:Angular 5 推迟到10月底发布
  6. SQL Server 索引结构及其使用
  7. 来自微软华人的软件人生经历:功夫在身外
  8. 页面中flash文件的加载
  9. HTML5基本知识小测验
  10. 如何格式化电脑_内存卡格式化不了怎么办?教你两招
  11. The Robustness of Deep Networks A geometrical perspective论文解读
  12. 性能测试-性能狗(Perfdog)测试与数据分析
  13. 如何找到合适的分辨率-电脑扩展屏分辨率低
  14. 想成为魅力十足的人的十大习惯
  15. 《Unix编程艺术》重读笔记(三)
  16. Drf从入门到精通一(API接口、Postman、Restful规范、序列化、快速使用drf、CBV源码分析)
  17. 打开计算机不显示硬盘一直在加载中,硬盘加载不出来怎么办 下面5个步骤帮你解决...
  18. 浅谈vue项目进阶开发-杂谈1
  19. post和put的请求的区别
  20. open-falcon-agent部署

热门文章

  1. Golang断点续传
  2. Python学习:pwd模块
  3. 微信小程序实战十:搜索列表的实现
  4. 佳博Gprinter GP-80350 打印机驱动
  5. Dubbo教程学习笔记——B站动力节点
  6. HTML邮件基本使用方法
  7. 对串级PID控温算法的解析
  8. 服务器不响应是不是光纤断了,二台S9306互联的光纤切断,服务器就不通了……已解决 - 华为技术论坛 - 51CTO技术论坛_中国领先的IT技术社区...
  9. 洛达应用层开发教程系列4-创建项目
  10. 手机端H5页面判断是否横屏