Как указать тип версии вasticsearch - PullRequest
0 голосов
/ 29 ноября 2018

Я пытаюсь проиндексировать документ, как показано ниже.

curl -s -XPUT -H"content-type:application/json" -d@data.json localhost:9200/contacts/_doc/1?version=7&version_type=external

К сожалению, это приводит к конфликту версий.Документация Elasticsearch говорит, что я должен передать version_type как external, когда я использую внешнюю версию.Но я не уверен, как это сделать, поскольку он не поддерживает это в качестве параметра запроса.

Как указать version_type как внешнее?

РЕДАКТИРОВАТЬ: текущая версия документа - 5. Но согласно es документации , когда используется version_type external, любая более высокая версия должна работать.Это означает, что 7 должно быть в состоянии перезаписать 5. Но, поскольку я получаю конфликт версий, я предполагаю, что es не принимает указанный мной параметр version_type.

РЕШЕНО: Я должен был поместить URL, указанный для curl, в кавычки.Bash взял & в URL, оставил его как новую команду и установил version_type в качестве переменной среды.

1 Ответ

0 голосов
/ 29 ноября 2018

Ваша команда curl выглядит правильно.Конфликт может возникнуть из-за разных версий документа.

Я бы предположил, что текущая версия документа не 7, и, следовательно, он вызывает конфликт версий.

Можете ли вы опубликоватьтекущая версия этого же документа?Это 7?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...