Переиндексация с помощью version_type: external не работает в ElasticSearch - PullRequest
0 голосов
/ 28 ноября 2018

Не могли бы вы помочь мне выяснить, что не так?

Предположим, у меня есть индекс A и индекс B, которые оба содержат документ с идентификатором 'myID'.

Внутри индекса AIиметь следующий документ:

"_id": "myID",
"_version": 6,
"_source": {
          "bucket": "myBucket",
          "metadata": {
            "lastname": "NewIndex"
             ...
          }
}

Внутри индекса BI есть следующий документ:

"_id": "myID",
"_version": 1,
"_source": {
          "bucket": "myBucket",
          "metadata": {
            "lastname": "OldIndex"
             ...
          }
}

Теперь я хотел бы переиндексировать все документы из документа A в документ B, но установивversion_type к external для обновления только тех документов, которые имеют более высокий номер версии в источнике, чем в целевом индексе (как в случае с этими документами), с помощью следующей команды:

POST _reindex
{
  "source": {
    "index": "A"
  },
  "dest": {
    "index": "B",
    "version_type": "external"
  }
}

После выполнения переиндексациикоманда metadata.lastname исходного документа не переиндексируется в индексе B!Индекс B будет по-прежнему иметь тот же документ с версией 1 (вместо 6), а metadata.lastname по-прежнему будет OldIndex (вместо NewIndex).Похоже, что в этом документе для индекса B. не произошло никаких обновлений или изменений. Что я делаю не так?

Заранее спасибо!

...