我有一个非常奇怪的错误来自searchkick索引我的数据。 基本上我正在尝试添加自定义映射以将一列指定为文本类型而不是关键字。
这是我正在使用的映射(作为summary的默认映射是关键字):
searchkick merge_mappings: true, mappings: {
candidates: {
properties: {
summary: {type: "text"},
}
}
}
但是当运行reindex时我有这个错误:
Searchkick::ImportError:
{"type"=>"mapper_parsing_exception", "reason"=>"failed to parse", "caused_by"=>
{"type"=>"illegal_state_exception", "reason"=>"Mixing up field types: class org.elasticsearch.index.mapper.KeywordFieldMapper$KeywordFieldType != class org.elasticsearch.index.mapper.TextFieldMapper$TextFieldType on field summary"}} on item with id '123'
我尝试了很多东西:
我真的无法找到为什么elasticsearch或searchkick不想将我的数据索引为文本。
如果您对我能尝试的内容有任何想法,那将是一个巨大的帮助。 非常感谢!