Elasticsearch バージョン 8.10.1

また、8.10 の破壊的変更も参照してください。

既知の問題

  • スナップショットベースのダウングレード
    スナップショットリポジトリのフォーマットが変更され、これにより、Elasticsearch の以前のバージョンがこのバージョンと最後にこのリポジトリに書き込んだクラスターが 8.10 シリーズである場合、リポジトリの内容を読み取ることができなくなります。これにより、アップグレード前に取得したスナップショットを復元することで、8.10 シリーズへのアップグレードを元に戻すことができなくなります。
    バージョン 8.11.0 以降を実行しているクラスターによって書き込まれたスナップショットリポジトリは、すべての以前のバージョンと互換性があります。さらに、バージョン 8.11.0 以降を実行しているクラスターは、スナップショットを取得または削除するためにリポジトリに書き込む際に、最初にリポジトリフォーマットを自動的に修復します。これにより、すべての以前のバージョンがその内容を再び読み取れるようになります。
    8.9.0 より前のバージョンにダウングレードしたい場合は、最初にバージョン 8.11.0 以降を実行しているクラスターを使用してスナップショットを取得または削除し、リポジトリフォーマットを修復してください。この方法でリポジトリを修復できない場合は、最初にバージョン 8.9.0 以降で取得したリポジトリ内のすべてのスナップショットを削除してください。これを行うには、バージョン 8.10.0 以降を実行しているクラスターを使用する必要があります。
    8.9 シリーズのバージョンにダウングレードしたい場合は、最初にバージョン 8.11.0 以降を実行しているクラスターを使用してスナップショットを取得または削除し、リポジトリフォーマットを修復してください。この方法でリポジトリを修復できない場合は、最初にバージョン 8.10.0 以降で取得したリポジトリ内のすべてのスナップショットを、バージョン 8.10.4 を実行しているクラスターを使用して削除してください。
  • GC JVM 設定変更による高メモリ圧力
    このバージョンの Elasticsearch は JDK 20 とバンドルされています。JDK 20 では、予防的 GC はデフォルトで無効になっています。これにより、特定の負荷パターンの下で大きなドキュメントを取得する際に、メモリ圧力が増加し、CircuitBreakerExceptions の数が増加する可能性があります。(問題: #99592
    この変更が Elasticsearch の使用に影響を与える場合は、JVM 引数 -XX:+UnlockDiagnosticVMOptions -XX:+G1UsePreventiveGC を追加して以前の動作を再度有効にすることを検討してください(参照: JDK 20 リリースノート)。この回避策は一時的なものであり、Elasticsearch のバージョン 8.10.2 までバンドルされている JDK 20 でのみ機能することに注意してください。以降のバージョンでは JDK 21+ がバンドルされており、この設定は削除されています。これらの JVM 引数を指定すると、JVM(したがって Elasticsearch ノード)が起動しなくなります。

バグ修正

  • 集約
    • セントロイドカウントに long を使用 #99491(問題: #80153
  • インフラ/コア
    • Cache.put と Cache.invalidateAll の間のデッドロックを修正 #99480(問題: #99326
  • インフラ/ノードライフサイクル
    • TransportGetShutdownStatusAction での計算をフォーク #99490(問題: #99487
  • 検索
    • 削除されたインデックスで解決する際の PIT を修正 #99281