Я использую эластичный поиск версии 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}