我想更新 ElasticSearch 文档,同时保持文档的版本相同。我正在使用 version_type=external,如index_ 文档的版本控制部分所示。如该部分所述,通常会阻止使用另一个相同版本的文档更新文档:“如果提供的值小于或等于存储文档的版本号,则会发生版本冲突并且索引操作将失败。”
我想保持版本不变的原因是,当向该对象添加新标签时,我没有创建对象的新版本(存储在我的数据库中),但我希望新标签显示在我的 ElasticSearch 索引中. 这对 ElasticSearch 可行吗?
我尝试删除该文档,然后添加一个具有相同 ID 和版本的新文档,但这仍然给了我以下异常:
VersionConflictEngineException[[myindex][2] [mytype][6]: 版本冲突,当前1,提供1 ]
仅供参考,我使用的是 PHP Elastica(带有方法$type->deleteDocument($doc);
和$type->addDocument($doc);
),但这个问题通常适用于 ElasticSearch。