【发布时间】:2022-01-17 18:52:17
【问题描述】:
这些天我们正在经历一个非常有趣的情况。我们之前有 ElasticSearch 6.2 并将其升级到 7.1。看起来旧版本保存的一些数据与新版本不再兼容,我正在寻找解决方案。
这是使用旧版本保存的记录示例:
"_index" : "products-0_v7",
"_type" : "_doc",
"_id" : "18442_Product one.",
"_score" : 11.565834,
"_source" : {
"description" : "",
"priceExVat" : 15.65
}```
问题是 Nest 库无法再检索到这个值:
_client.Get<Product>(productId, x => x.Index(index))
调试调用时,句号被去除。在索引操作期间也会发生同样的事情:
var indexRequest = new IndexRequest<InvoicableProduct>(product, aliasErpimport, new Id(product.Id));
var ret = _client.Index(indexRequest);
关于如何解决这个问题的任何想法?是否有可能根本不剥离期间?如果您为诸如“产品一”之类的值编制索引(带有额外空格),它会起作用,但由于原始记录没有尾随空格,因此会创建重复。
【问题讨论】:
-
根据upgrade guide,您应该先将 6.2 升级到 6.8,然后再升级到 7.x。如果这不能解决问题,则可能是
nest错误; Elasticsearch 7.x 索引并检索 ID 以点结尾的文档,没有任何问题。 -
@ilvar 如果我是从 kibana 使用 curl 命令而不是从 Nest 库中执行此操作,它正在工作。调用时图书馆正在剥离点
-
考虑为nest提交问题
标签: elasticsearch nest