ES查询报错处理

文章介绍了Elasticsearch(ES)在执行动态脚本时遇到Toomanydynamicscriptcompilations错误的解决方案。首先提供了临时解决办法,通过调整集群设置,增大`script.max_compilations_rate`限制来允许更多的脚本编译。然后,文章提出了治本策略,通过编写不变的脚本来减少编译次数,提高执行效率。
摘要由CSDN通过智能技术生成

ES查询报错:Too many dynamic script compilations within, max: [75/5m]解决方法

治标方法

修改脚本执行的限制次数

PUT _cluster/settings
{
    "transient" : {
        "script.max_compilations_rate" : "100/1m"
    }
}

如果脚本执行的次数超过了100次每分钟,会继续报错。

治本方法

POST my_index/_update/1
{
  "script": {
    "source": "ctx._source.name = params.name",
    "params": {
      "name": "tom"
    }
  }
}

此时脚本的内容为"ctx._source.name = params.name" 不会因为被修改的内容不同,而发生变化,极大的减少了编译的次数,提升脚本执行效率。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值