从 5.5.x 升级到 6.0.x
本节描述了从版本 5.5.x 到 6.0.x 的破坏性变更,以及如何使用新引入的功能替代已被移除的功能。
重大变更
从 6.0 版本开始,Spring Data Elasticsearch 使用 Elasticsearch 9 库,并默认采用这些库提供的新 Rest5Client。仍然可以使用旧的 RestClient,请查阅 Elasticsearch 客户端 获取相关信息。针对此 RestClient 的配置回调已从 org.springframework.data.elasticsearch.client.elc.ElasticsearchClients 移至 org.springframework.data.elasticsearch.client.elc.rest_client.RestClients 类。
在 org.springframework.data.elasticsearch.core.query.UpdateQuery 类中,两个字段 ifSeqNo 和 ifPrimaryTerm 的类型已从 Integer 更改为 Long,以与常规查询及底层 Elasticsearch 客户端保持一致。
弃用
所有使用旧版 RestClient 的代码已移至 org.springframework.data.elasticsearch.client.elc.rest_client 包,并已被弃用。用户应切换到 org.springframework.data.elasticsearch.client.elc.rest5_client 包中的类。
移除
org.springframework.data.elasticsearch.core.query.ScriptType 枚举已被移除。要区分内联脚本和存储脚本,请在 org.springframework.data.elasticsearch.core.query.ScriptData 记录中设置相应的值。
这些方法已被移除,因为 Elasticsearch Client 9 不再支持它们:
org.springframework.data.elasticsearch.client.elc.ReactiveElasticsearchIndicesClient.unfreeze(UnfreezeRequest)
org.springframework.data.elasticsearch.client.elc.ReactiveElasticsearchIndicesClient.unfreeze(Function<UnfreezeRequest.Builder, ObjectBuilder<UnfreezeRequest>>)