неизвестное поле [dest], анализатор не найден — ошибка при переиндексации

#javascript #node.js #elasticsearch #reindex

#javascript #node.js #elasticsearch #переиндексировать

Вопрос:

При индексации с помощью следующего кода возникает ошибка, поскольку анализатор неизвестного поля не найден:

 client.reindex({

         body: {
            script: {
               source: {
                  index: index,
                  type: "_doc",
                  query: {
                     term: {
                        id: id
                     }
                  }
               },
               dest: {
                  index: dest_ind
               }
            }
         }
      }
  

Комментарии:

1. dest свойство должно быть вне script .

Ответ №1:

Поместить dest снаружи и не вложить в script https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-reindex.html

 client.reindex({
    body: {
          source: {
             index: index,
             type: "_doc",
             query: {
                term: {
                   id: id
                }
             }
       },
       dest: {
            index: dest_ind
        }
    }
 })
  

Комментарии:

1. Да, но снова возникла ошибка проверки. Я удалил поле script, и остальной код остался таким, как есть. Кажется, теперь работает.

2. @A.Код. Ran — я действительно не знаком с reindex , но ошибка заключалась в том, что компилятор не знал, что такое dest . Поэтому позже я проверил documentation .