從 5.1.x 升級至 5.2.x

本節說明從 5.1.x 版到 5.2.x 版的重大變更,以及如何使用新導入的功能來取代已移除的功能。

重大變更

大量失敗

org.springframework.data.elasticsearch.BulkFailureException 類別中,getFailedDocuments 的傳回類型已從 Map<String, String> 變更為 Map<String, FailureDetails>,以便取得關於失敗原因的更多詳細資訊。

FailureDetails 類別的定義 (為 BulkFailureException 的內部類別)

public record FailureDetails(Integer status, String errorMessage) {
}

腳本化和執行階段欄位

org.springframework.data.elasticsearch.core.RuntimeFieldorg.springframework.data.elasticsearch.core.query.ScriptType 類別已移至子套件 org.springframework.data.elasticsearch.core.query

ScriptData 建構函式的 type 參數不再可為 Null。

棄用

移除已棄用的程式碼

  • 所有使用舊的已棄用 RestHighLevelClient 的程式碼都已移除。自 5.0 版起使用的預設 Elasticsearch 用戶端是 (並非那麼新的) Elasticsearch Java 用戶端。

  • org.springframework.data.elasticsearch.client.ClientLogger 類別已移除。此記錄器已使用 org.springframework.data.elasticsearch.client.WIRE 設定進行設定,但並非適用於所有用戶端。從版本 5 開始,請使用 Elasticsearch Java 用戶端中提供的追蹤記錄器,請參閱 用戶端記錄

  • org.springframework.data.elasticsearch.core.ElasticsearchOperations.stringIdRepresentation(Object) 方法已移除,請改用相同介面中定義的 convertId(Object) 方法。

  • org.springframework.data.elasticsearch.core.Range 類別已移除,請改用 org.springframework.data.domain.Range

  • org.springframework.data.elasticsearch.core.query.IndexQuery.getParentId()setParentId(String) 方法已移除,它們已不再使用且為 no-op。也已從 org.springframework.data.elasticsearch.core.query.IndexQuery 類別中移除。