Проблема с созданием индекса с отображением - PullRequest
0 голосов
/ 22 мая 2019

Я использую эластичный поиск версии 7.1.0 и NEST 6.7.0 с Elasticsearch.Net 6.7.0.Пока я пытаюсь создать индекс, у меня появляется ошибка.

Это мой код, я использовал один и тот же код в NEST и Elasticsearch.Net версии 6.4.0, и он работал нормально

var result =   Client.CreateIndex(DefaultIndex, c => c
                .Settings(s => s
                    .NumberOfShards(numberOfShards)
                    .NumberOfReplicas(numberOfReplicas)
                    .BlocksReadOnly(false)
                )
                .Mappings(m => m
                    .Map<SearchDocument>(mm => mm
                        .AutoMap(3)
                    )
                )
            );

Это ошибка, которую я получил

Неверный ответ NEST, созданный из неудачного низкоуровневого вызова на PUT: / local_brainbank_index

Журнал аудита этого вызова API:

  • [1] BadResponse: Узел: http://localhost:9200/ Взял: 00: 00: 00.2880040

    OriginalException: Elasticsearch.Net.ElasticsearchClientException: удаленный сервер возвратил ошибку: (400) Плохой запрос .. Позвоните: Статус

код 400 из: PUT / local_brainbank_index.ServerError: Type: mapper_parsing_exception Причина: "Не удалось проанализировать сопоставление [_doc]: определение корневого сопоставления имеет неподдерживаемые параметры: [searchdocument: {properties = {sourceId = {type = integer}, sourceType = {type = text, fields = {keyword ={ignore_above = 256, тип = ключевое слово}}}, имя-автора = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, тема = {тип = текст, поля = {ключевое слово = {ignore_above= 256, тип = ключевое слово}}}, imageURL = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, идентификатор = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, имя_источника = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, тело = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип= ключевое слово}}}, uRL = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}}}] »CausedBy:« Тип: mapper_parsing_exception Причина: «Определение корневого отображения имеет неподдерживаемые параметры: [Документ поиска: {свойства = {sourceId = {тип = целое число}, sourceType = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, authorName = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, тема = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, imageURL = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, идентификатор = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, имя_источника= {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, тело = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, uRL = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}}}] "" ---> System.Net.WebException: удаленный сервер возвратил ошибку: (400) неверный запрос.в System.Net.HttpWebRequest.GetResponse () в Elasticsearch.Net.HttpWebRequestConnection.Request [TResponse] (RequestData requestData) --- Конец внутренней трассировки стека исключений ---

Запрос:

{"mappings":{"searchdocument":{"properties":{"id":{"type":"text","fields":{"keyword":{"type":"keyword","ignore_above":256}}},"sourceType":{"type":"text","fields":{"keyword":{"type":"keyword","ignore_above":256}}},"sourceId":{"type":"integer"},"sourceName":{"type":"text","fields":{"keyword":{"type":"keyword","ignore_above":256}}},"authorName":{"type":"text","fields":{"keyword":{"type":"keyword","ignore_above":256}}},"subject":{"type":"text","fields":{"keyword":{"type":"keyword","ignore_above":256}}},"body":{"type":"text","fields":{"keyword":{"type":"keyword","ignore_above":256}}},"uRL":{"type":"text","fields":{"keyword":{"type":"keyword","ignore_above":256}}},"imageURL":{"type":"text","fields":{"keyword":{"type":"keyword","ignore_above":256}}}}}},"settings":{"index.number_of_replicas":0,"index.blocks.read_only":false,"index.number_of_shards":1}}

Ответ:

{"error": {"root_cause": [{"type": "mapper_parsing_exception", "reason": "Определение корневого отображения имеет неподдерживаемые параметры:[searchdocument: {свойства = {sourceId = {тип = целое число}, sourceType = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, имя-автора = {тип = текст, поля = {ключевое слово= {ignore_above = 256, тип = ключевое слово}}}, тема = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, imageURL = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, id = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, имя_источника = {тип = текст, поля = {ключевое слово = {ignore_above =256, тип = ключевое слово}}}, тело = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, uRL = {тип = текст, поля = {ключевое слово = {ignore_above = 256,Тип = ключевое слово}}}}}] "}]," type ":" mapper_parsing_exception "," reason ":" Не удалось проанализировать отображение [_doc]: определение корневого отображения имеет неподдерживаемые параметры: [searchdocument: {properties = {sourceId = {type = integer}, sourceType = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, authorName = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, тема= {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, imageURL = {тип = текст,fields = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, id = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, sourceName = {type = text, fields ={ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, тело = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, uRL = {тип = текст, поля = {ключевое слово= {ignore_above = 256, type = keyword}}}}}] "," reason_by ": {" type ":" mapper_parsing_exception "," reason ":" Определение корневого сопоставления имеет неподдерживаемые параметры: [searchdocument: {properties = {sourceId "= {тип = целое число}, sourceType = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, имя-автора = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип =ключевое слово}}}, тема = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, imageURL = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, id = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, имя_источника = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, тело = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}, uRL = {тип = текст, поля = {ключевое слово = {ignore_above = 256, тип = ключевое слово}}}}}] "}}," статус ": 400}

1 Ответ

0 голосов
/ 23 мая 2019

NEST и Elasticsearch.Net 6.7.0 не совместимы с Elasticsearch 7.x.Пожалуйста, используйте NEST и Elasticsearch.Net 7.x, последний из которых должен быть выпущен на данный момент: 7.0.0-alpha2 .

...