Как обновить документ в ElasticSearch при использовании внешнего управления версиями

#elasticsearch

Вопрос:

Я хочу выполнить обновление в Elasticsearch 7.9 с использованием внешнего управления версиями (управление версиями на основе времени). Я пытаюсь выполнить обновление API, но при указании version и version_type=external .

 indexName/_update/id?version=1234568amp;version_type=external
{
  "doc": {...},
  "doc_as_upsert": true
}
 

Я продолжаю получать сообщение об ошибке:

Ошибка проверки: 1: внутреннее управление версиями не может использоваться для оптимистичного управления параллелизмом. Пожалуйста, используйте if_seq_no и if_primary_term вместо

Но я не использую здесь внутреннее управление версиями — почему оно выдает эту ошибку? Разве API обновления не поддерживает предоставление версии таким образом?

Ответ №1:

По-видимому, невозможно использовать внешнее управление версиями при «обновлении» документа в ElasticSearch. В документации это явно не указано, но не предусмотрено никаких опций для предоставления внешней версии.