elasticsearch _update_by_query with conflicts = proceed

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了elasticsearch _update_by_query with conflicts = proceed相关的知识,希望对你有一定的参考价值。

当我使用_update_by_query而没有冲突选项时,它导致了version_conflict_engine_exception错误。

阅读this document,我发现conflict = proceed可以与请求一起传递以避免此错误。

虽然我对文档中的措辞感到困惑。我知道一旦指定了conflict = proceed,它就不会在发生版本冲突时中止。

但它会更新那些发生冲突的文档,或者它不会更新这些文档,并且只更新没有冲突的文档。

注意:我使用的是elasticsearch 5.6

答案

当文档在ID或映射或字段类型中不匹配时,会发生版本冲突。当单个文档发生冲突时,update_by_query将停止,并且对于该索引和下一个索引中的其余文档,更新将不可用。 (当然有些文档已经更新)如果你使用冲突=继续它不会只更新文档有冲突(只是跳过那个文档而不是整个索引)。

以上是关于elasticsearch _update_by_query with conflicts = proceed的主要内容,如果未能解决你的问题,请参考以下文章

ElasticSearch_02_使用docker安装elasticsearch6.8.0

ElasticSearch_02_使用docker安装elasticsearch6.8.0

ElasticSearch_02_使用docker安装elasticsearch6.8.0

ElasticSearch_01_使用docker安装elasticsearch6.8.0

架构师成长记_第八周_02_ Centos安装分布式搜索引擎 ElasticSearch

架构师成长记_第八周_20_Elasticsearch 集群构建