gpt4 book ai didi

Golang Elasticsearch 奥利维尔 : Root mapping definition has unsupported parameters

转载 作者:行者123 更新时间:2023-12-03 03:11:35 36 4
gpt4 key购买 nike

我正在尝试使用 Olivere's elastic search client for the Go language 创建索引版本 7.存储库 wiki page 上有一个如何实现这一目标的示例。 。我相信我正在遵循以下步骤:

client, err := elastic.NewClient()
if err != nil {
// Handle error
panic(err)
}

// Create a new index.
mapping := `{
"settings":{
"number_of_shards":1,
"number_of_replicas":0
},
"mappings":{
"properties":{
"tags":{
"type":"keyword"
},
"location":{
"type":"geo_point"
},
"suggest_field":{
"type":"completion",
"payloads":true
}
}
}
}`

ctx := context.Background()
createIndex, err := client.CreateIndex("twitter").BodyString(mapping).Do(ctx)
if err != nil {
// Handle error
panic(err)
}
if !createIndex.Acknowledged {
// Not acknowledged
}

但我收到一个错误:

Failed to parse mapping [properties]: Root mapping definition has unsupported parameters: [location : {type=geo_point}] [suggest_field : {payloads=true, type=completion}] [tags : {type=keyword}] [type=mapper_parsing_exception]

我知道 mapping types have been removed in Elasticsearch V7 ,但看不出这会如何产生上述错误。

我也reported此问题在相应的存储库中。

最佳答案

原因是

“有效负载”:true

正如该库的创建者所指出的那样 in his answer到我的 Github 问题。删除“payloads”:true后,它可以工作。他甚至创建了一个gist与解决方案。

请注意,当您在 Elastic V6 上运行但意外使用 V7 的 golang 客户端时,您会收到类似的错误消息。

关于Golang Elasticsearch 奥利维尔 : Root mapping definition has unsupported parameters,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59273327/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com