当前位置: 首页 > article >正文

es执行_update_by_query要注意

背景:

一次给es新增字段,并且拷贝字段的操作,采用

curl -X POST "http://localhost:9200/xxx/_update_by_query" -H 'Content-Type: application/json' -d'
{
  "script": {
    "source": "ctx._source.didstr = ctx._source.did.toString()"
  }
}'

执行结果返回

curl: (52) Empty reply from server
 

es里面总的数据差不多1k条,也不多,但就这个看似简单的操作,执行还是错误了。

原因:

资源不足,当时在内网测试环境执行的时候并没有出现错误。

解决办法:

使用size,分批执行

curl -X POST "http://localhost:9200/xxx/_update_by_query" -H 'Content-Type: application/json' -d'
{
  "script": {
    "source": "ctx._source.didstr = ctx._source.did.toString()",
    "lang": "painless"
  },
  "size": 10,
  "query": {
    "exists": {
      "field": "did"
    }
  }
}'

像上面这个每次10个,10个的处理,就能正常执行完。


http://www.kler.cn/a/404953.html

相关文章:

  • Mac系统下配置 Tomcat 运行环境
  • 基于边缘计算技术的机器状态监测系统
  • 2024年11月17日Github流行趋势
  • 数据库视图-多表
  • 力扣题解(新增道路查询后的最短距离II)
  • 自适应安全框架(ASA)在网络安全2.0新防御体系中的应用
  • Mybatis框架之模板方法模式 (Template Method Pattern)
  • 深入理解 Java 阻塞队列:使用场景、原理与性能优化
  • 11.21Scala
  • reids基础
  • 软件测试最全单元测试之mock使用_maven项目mock单元测试,2024年最新关于软件测试性能优化的几点建议
  • Scala中Arry
  • w048基于web的校园资料分享平台
  • 深度学习之FCN
  • 241117学习日志——[CSDIY] [ByteDance] 后端训练营 [05]
  • Pgsql 时间减法操作
  • QT中QString类的各种使用
  • [NewStarCTF 2023]include 0。0--详细解析
  • Rust学习(六):函数式编程
  • 【C++习题】6.字符串相加