我如何修复此错误 Mapper for [description] 与现有 mapper:Cannot 更新参数 [analyzer] 从 [my_analyzer] 冲突到 [default]
How can i fix this error Mapper for [description] conflicts with existing mapper:Cannot update parameter [analyzer] from [my_analyzer] to [default]
我是 elastic 的新手 search.please 帮我解决这个问题。
我正在使用弹性搜索版本 7.13.2。
我用这样的自定义分析器和过滤器创建了一个索引
PUT /analyzers_test
{
"settings": {
"analysis": {
"analyzer": {
"english_stop":{
"type":"standard",
"stopwords":"_english_"
},
"my_analyzer":{
"type":"custom",
"tokenizer":"standard",
"char_filter":["html_strip"
],
"filter":[
"lowercase",
"trim",
"my_stemmer"]
}
},
"filter": {
"my_stemmer":{
"type":"stemmer",
"name":"english"
}
}
}
}
}
然后我为我将拥有的文档创建了一个映射,并指定了我之前创建的自定义分析器(索引中还没有文档)
像这样:
PUT /analyzers_test/_mapping
{
"properties": {
"description":{
"type": "text",
"analyzer": "my_analyzer"
},
"teaser":{
"type": "text"
}
}
}
当我尝试创建这样的文档时
POST /analyzers_test/1
{
"description":"drinking",
"teaser":"drinking"
}
我收到以下错误
{
"error" : {
"root_cause" : [
{
"type" : "illegal_argument_exception",
"reason" : "Mapper for [description] conflicts with existing mapper:\n\tCannot update parameter [analyzer] from [my_analyzer] to [default]"
}
],
"type" : "illegal_argument_exception",
"reason" : "Mapper for [description] conflicts with existing mapper:\n\tCannot update parameter [analyzer] from [my_analyzer] to [default]"
},
"status" : 400
}
使用 index API 将文档添加到您的索引中。您缺少 _doc
“您不能更改现有字段的映射(包括分析器)。如果要更改现有文档的映射,您需要做的是使用更新的映射将这些文档重新索引到另一个索引。” Abdon Pijpelink
单击原始讨论的名称
我是 elastic 的新手 search.please 帮我解决这个问题。
我正在使用弹性搜索版本 7.13.2。
我用这样的自定义分析器和过滤器创建了一个索引
PUT /analyzers_test
{
"settings": {
"analysis": {
"analyzer": {
"english_stop":{
"type":"standard",
"stopwords":"_english_"
},
"my_analyzer":{
"type":"custom",
"tokenizer":"standard",
"char_filter":["html_strip"
],
"filter":[
"lowercase",
"trim",
"my_stemmer"]
}
},
"filter": {
"my_stemmer":{
"type":"stemmer",
"name":"english"
}
}
}
}
}
然后我为我将拥有的文档创建了一个映射,并指定了我之前创建的自定义分析器(索引中还没有文档) 像这样:
PUT /analyzers_test/_mapping
{
"properties": {
"description":{
"type": "text",
"analyzer": "my_analyzer"
},
"teaser":{
"type": "text"
}
}
}
当我尝试创建这样的文档时
POST /analyzers_test/1
{
"description":"drinking",
"teaser":"drinking"
}
我收到以下错误
{
"error" : {
"root_cause" : [
{
"type" : "illegal_argument_exception",
"reason" : "Mapper for [description] conflicts with existing mapper:\n\tCannot update parameter [analyzer] from [my_analyzer] to [default]"
}
],
"type" : "illegal_argument_exception",
"reason" : "Mapper for [description] conflicts with existing mapper:\n\tCannot update parameter [analyzer] from [my_analyzer] to [default]"
},
"status" : 400
}
使用 index API 将文档添加到您的索引中。您缺少 _doc
“您不能更改现有字段的映射(包括分析器)。如果要更改现有文档的映射,您需要做的是使用更新的映射将这些文档重新索引到另一个索引。” Abdon Pijpelink
单击原始讨论的名称