You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Elasticsearch升级至8.5后使用通配符*出现unsupported_operation_exception

Elasticsearch 8.5中query_string查询"*"报错的解决方案

问题根源

Elasticsearch 8.x版本默认禁用了以通配符开头的query_string查询,这类查询会触发全分片扫描,严重拖慢集群性能,因此官方在新版本中新增了这个限制,而7.8版本无此约束,导致升级后原查询报错。

解决方案

方案1:用match_all替代(推荐)

如果你的需求是匹配所有文档,直接使用match_all查询即可,这是性能最优的方式:

{
  "query": {
    "match_all": {}
  }
}

方案2:启用通配符开头查询(不推荐,仅必要时使用)

若必须保留原query_string的写法,需要修改索引设置,开启允许通配符开头的查询:

  • 新建索引时配置:
PUT /你的索引名
{
  "settings": {
    "index.query.allow_leading_wildcard": true
  }
}
  • 对已存在的索引更新配置:
PUT /你的索引名/_settings
{
  "index.query.allow_leading_wildcard": true
}

注意:启用该设置会大幅降低查询性能,还可能引发内存溢出风险,非必要场景优先选择方案1。

内容的提问来源于stack exchange,提问作者D-user

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 14:18:10