Elasticsearch バージョン 8.4.0

8.4 の 破壊的変更 も参照してください。

既知の問題

  • 機械学習データフィードは、バージョン 6.x 以降に変更されていない場合、リストできません。
    バージョン 5.x または 6.x で作成され、7.0 以降に更新されていないデータフィードがある場合、8.4 および 8.5 でデータフィードをリストすることはできません。これは、異常検出ジョブを Kibana で管理できないことを意味します。この問題は 8.6.0 で修正されました。
    そのようなデータフィードで 8.4 または 8.5 にアップグレードする場合は、これらの手順を使用して各データフィードの認証情報を更新することで問題を回避する必要があります。

  • Elasticsearch を構成するために settings.json ファイルを使用するオーケストレーターは、マスター選挙中にデッドロックに遭遇する可能性があります(問題: #92812
    デッドロックを解決するには、settings.json ファイルを削除し、影響を受けたノードを再起動します。

  • 配列の最後の要素がフィルタリングされているときにリクエストを解析すると(たとえば、_source_includes を使用して)失敗します。これは Jackson パーサーのバグ に起因します。Elasticsearch 8.6.1 で修正されました(#91456

  • ingest attachment processor を使用している場合、Tika と log4j 2.18.0 以降(Elasticsearch 8.4.0 で導入)の相互作用により、過剰なログが生成されます。このログは非常に過剰で、クラスターの不安定性を引き起こし、クラスターが使用できなくなり、ノードを再起動する必要がある場合があります(問題: #91964)。この問題は Elasticsearch 8.7.0 で修正されました(#93878
    この問題を解決するには、8.7.0 以上にアップグレードしてください。

バグ修正

  • 集約
  • 割り当て
    • 自動拡張レプリカを最も近い値に制限 #87505 (問題: #84788
    • 一部のケースで古いノードの重みを使用して再バランスを防ぐ #88385 (問題: #88384
    • read_only_allow_delete インデックスブロックが cluster.routing.allocation.disk.threshold_enabled に設定されている場合、既存の read_only_allow_delete インデックスブロックを削除 #87841 (問題: #86383
    • 健康リクエストを状態オブザーバーに置き換える #88641
  • 認証
    • デフォルトのレルムをカバーするためにユニークなレルム名チェックを修正 #87999
  • 認可
    • remote_monitoring_agent のロールオーバー権限を追加 #87717 (問題: #84161
  • 自動スケーリング
    • 縮小中の自動スケーリング #88292 (問題: #85480
    • スナップショットに希望ノードを含めない #87695
  • クラスター調整
    • 曖昧な投票構成名の拒否を改善 #89239
  • データストリーム
    • CCR 複製でデータストリームの名前を変更する修正 #88875 (問題: #81751
  • 分散
    • バルクリクエストでの NullPointerException の修正 #88385
  • EQL
    • PIT オープン失敗時に PIT クローズを試みない #87498
    • EQL シーケンス回路ブレーカーの精度を改善 #88538 (問題: #88300
  • Geo
    • geo_line 集約は、結果のラインにポイントが 1 つしかない場合に geojson ポイントを返します #89199 (問題: #85748
    • geo_distance 集約で範囲をソート #89154 (問題: #89147
  • 健康
    • 最後のスナップショットが成功したかどうかを確認する際の NPE の修正 #88811
    • マスタースタビリティ機能のバージョンチェックの修正 #89322
    • 内部アクション名の修正 #89182
    • リモートマスターヒストリーを取得するための正しい接続を使用 #87299
  • ハイライト
    • 複数の入力に対するプレーンハイライターの順序を処理 #87414 (問題: #87210
  • ILM+SLM
    • バッチ ILM 移動を再試行ステップタスクの更新に追加 #86759
  • Infra/CLI
    • Windows サービス CLI での空白を含むパスを引用 #89072 (問題: #89043
  • Infra/Core
    • ディレクトリストリームを常に閉じる #88560
    • システムインデックスの無効な設定を削除 #88903 (問題: #88324
    • 3 桁のマイナーおよびリビジョンバージョンを許可しない #87338
    • ファイル設定でのスナップショット復元を処理 #89321 (問題: #89183
    • システムインデックスはすべてのユーザーテンプレートを無視します #87260 (問題: #42508, #74271
  • Infra/Node Lifecycle
    • 停止したシャットダウンのメッセージを修正 #89254
  • Infra/Plugins
    • SPIClassIterator での URL 接続キャッシュを無効にする #88586 (問題: #88275
  • Infra/Scripting
    • スクリプト: UpdateByQuery は要求された場合にドキュメントバージョンを読み取ることができます #88740
  • 機械学習
    • 割り当てられたノードにモデルがスタートしたままになる潜在的なバグに対処 #88945
    • Unicode アクセントを処理する際の BERT および MPNet トークン化バグの修正 #88907 (問題: #88900
    • 最良の回答が 1 つのトークンのみである場合の NLP question_answering タスクの修正 #88347
    • 開始されていないモデルデプロイメントの _stats に開始パラメータを含める #89091
    • roberta トークナイザーを使用した fill_mask タスクでの小さなトークン化バグの修正 #88825
    • 分類および回帰ジョブの失敗の潜在的な原因を修正 #2385
  • マッピング
    • マッピングを解析する際にマージされたオブジェクトに正しいパスを割り当てる #89389 (問題: #88573
    • 合成ランタイムフィールドを解析する際にソースマップを変更しない #89114
  • ネットワーク
    • 拡張ソケットオプション TCP_KEEPXXX が利用可能であることを確認 #88935 (問題: #88897
  • SQL
    • SqlSearchIT testAllTypesWithRequestToOldNodes の修正 #88883 (問題: #88866
    • 日付範囲チェックの修正 #87151 (問題: #77179
    • オブジェクト等価の修正 #87887
  • 検索
    • 修正: シャードが失敗しなかった場合、集約の減少フェーズエラーに対してステータスコード 500 を使用 #88551 (問題: #20004
    • 終了可能ポイントビジターのバルク訪問メソッドをオーバーライド #82120
  • セキュリティ
    • セキュア設定を再読み込みする際に secureString がオープンのままであることを確認 #88922
  • スナップショット/復元
    • 部分的なスナップショットが削除のために失敗した後のキューされたスナップショット割り当ての修正 #88470 (問題: #86724
  • 変換
    • 更新エラーを正しく処理 #88619

非推奨

  • ベクトル検索
    • _knn_search エンドポイントを非推奨にする #88828

強化

  • 集約
    • random_sampler agg に対する基数サポートを追加 #86838
    • マイナー RangeAgg 最適化 #86935 (問題: #84262
    • フィルター/範囲/日付ヒストグラム aggs のカウントを高速化 #81322
    • 中間の単一バケットおよびバケット資格付きのマルチバケット aggs を許可するためにバケットメトリックパイプライン agg パスを更新 #85729
  • 割り当て
    • 割り当てられたシャードと未割り当てシャードに関するデバッグ情報を ReactiveReason に追加 #86132 (問題: #85243
    • クラスターの健康パフォーマンスを最適化します。#87723
    • データティアの割り当て決定中に希望ノードを使用 #87735
  • 監査
    • API キーを作成または付与する際に API キー ID を監査 #88456
    • API キーが作成、付与、または更新されたときに監査ログに API キーのメタデータを含める #88642
    • 更新可能な API キー - 監査トレイルイベントのログ #88276
    • ユーザープロファイル - セキュリティドメインの監査サポート #87097
  • 認証
    • 署名検証が失敗した場合、JWK を再読み込みし、新しい JWK が見つかった場合は再試行 #88023
  • 認可
    • アクションパターンを持つアプリ権限は特権を取得しません #85455
    • キャンセル可能なプロファイルの特権チェック #87224
    • 不十分な特権を持つユーザーが API キーの付与リクエストを試みた場合、アクション拒否エラーを返す (manage_own_api_key) #87461 (問題: #87438
    • エンタープライズ検索サービスアカウントへのインデックス権限を更新 #88703
  • 自動スケーリング
    • 自動スケーリング容量応答にプロセッサを追加 #87895
    • クラスター状態で希望ノードのステータスを追跡 #87474
  • クラスター調整
    • 永続化されたクラスター状態のマッピングを重複排除 #88479
    • PCSS デバッグログにセグメントの詳細を公開 #87412
    • シードホストを持つ 1 ノードクラスターに対する定期的な警告 #88013 (問題: #85222
    • クラスター統計で全体のマッピングサイズを報告 #87556
  • データストリーム
    • メトリックテンプレートの数値フィールドに doc-value-only マッピングを提供 #87100
  • 分散
    • コーディネーターに PeerFinderListener を登録する機能を追加 #88626
    • 希望ノード API をオペレーター専用にする #87778 (問題: #87777
    • 希望ノードを更新するための「ドライラン」モードをサポート #88305
  • FIPS
    • キャッシュで使用されるハッシュ関数が FIPS モードで推奨されていない場合に警告を記録 #86740
    • 保存された API キーまたはサービストークンのハッシャーが FIPS に準拠していない場合に警告を記録 #87363
  • Geo
    • シングルトンポイントのための geogrid 集約を最適化 #87439
    • doc 値を持つ直交形状をサポート #88487
    • Geotile Y 座標を計算するためにより速いが精度の低いログアルゴリズムを使用 #87515
    • WGS84 をメルカトルに投影するためにより速い数学を使用 #88231
  • 健康
    • 不健康な SLM ポリシーの失敗カウントに対する健康ユーザーアクションを追加 #88523
    • クラスター形成情報を取得するためのトランスポートアクションを追加 #87306
    • master_is_stable 健康指標サービスに追加機能を追加 #87482
    • CoordinationDiagnosticsService のためのトランスポートアクションを作成 #87984
    • マスタースタビリティロジックを HealthIndicatorService から分離した独自のサービスに移動 #87672
    • マスターが安定している健康指標のためにクラスター形成状態をポーリング #88397
    • 健康 API からクラスターブロックの事前チェックを削除 #87520 (問題: #87464
  • ILM+SLM
    • ロールオーバーに min_* 条件を追加 #83345
    • 最後の成功したポリシースナップショット以降の失敗した呼び出しのカウントを追跡 #88398
  • Infra/Core
    • コンソール例外メッセージを改善 #87942
    • コンソールが非対話型のときに完全な例外を印刷 #88297
    • 強制マージインデックスライフサイクル管理アクションを実行する際にインデックスを読み取り専用にしない #81162 (問題: #81162
    • オプションのコレクションに対するストリーム入力および出力のサポート #88127
    • 内部 http クライアントのバージョンを更新 #87491
  • Infra/Logging
    • 文字列のフォーマットに失敗したときに例外をキャッチ #87132
  • Infra/Scripting
    • スクリプト: インジェストコンテキストにメタデータを追加 #87309
    • スクリプト: 更新コンテキストのメタデータ #88333
  • Infra/Settings
    • ディスクの水位を相対バイトサイズ値に変換 #88719
  • インジェスト
    • パイプラインプロセッサが欠落しているパイプラインを無視できるようにする #87354
    • インジェストアタッチメントプロセッサをデフォルト配布に移動 #87989
    • 必要な場合にのみインジェスト中に ensureNoSelfReferences チェックを実行 #87352 (問題: #87335
    • インジェストアタッチメントプラグインから BouncyCastle 依存関係を削除 #88031
  • 機械学習
    • ML 設定リストに認可情報を追加 #87884
    • 訓練されたモデル統計応答の inference_stats にデプロイされたネイティブモデルを追加 #88187
    • 推論ノード統計に推論キャッシュヒットカウントを追加 #88807
    • デプロイメント API に新しい cache_size パラメータを追加 #88450
    • 許可される NER ラベルを I-O-B タグ付きラベルの任意に拡張 #87091
    • NLP モデルのスケーラビリティを改善 #87366
    • すべてのノードルートが失敗した場合、全体のデプロイメント失敗を示す #88378
    • 新しい frequent_items 集約 #83055
    • 分類および回帰モデルのトレーニング選択のためのサイズペナルティの適用を公平にする #2291
    • 不要な場合は微調整をスキップしてデータフレーム分析のトレーニングを加速 #2298
    • 多くの特徴を持つ大規模データセットでの回帰および分類モデルのトレーニングの高い実行時間の原因のいくつかに対処 #2332
    • PyTorch 推論のキャッシングを追加 #2305
    • 異常検出の中央値推定の精度を改善 #2367 (問題: #2364
  • マッピング
    • 定数キーワードフィールドでの合成ソースサポートを有効にする #88603
    • NumberFieldMapper を高速化 #85688
  • 監視
    • JvmService は SingleObjectCache を使用 #87236
  • ネットワーク
    • 到達不可能なリモートクラスターでクラスターを開始できるようにする #87298
    • http.max_header_size のデフォルトを 16kb に増加 #88725 (問題: #88501
  • クエリ言語
    • SQL および EQL での VERSION フィールドタイプのサポートを追加 #87590 (問題: #83375
  • ロールアップ
    • [TSDB] ダウンサンプリング合計に Kahan サポートを追加 #87554
  • SQL
    • SQL CLI での部分的な検索結果のサポートを実装 #86982 (問題: #86082
    • 接続ダイアログ v2 を使用するように Tableau コネクタを更新 #88462
  • 検索
    • インデックスされた dense_vectors のマッピング統計を追加 #86859
    • 互換性のない型でソートする際のエラーを改善 #88399 (問題: #73146
    • ディスク使用アクションで kNN ベクトルをサポート #88785 (問題: #84801
  • セキュリティ
    • oidc バックチャネル用の tcp_keepalive の設定を追加 #87868
    • API キーを付与する際に別のユーザーをサポート #88335
    • API キークエリの存在クエリをサポート #87229
    • 更新可能な API キー - REST API 仕様とテスト #88270
    • 更新可能な API キー - noop チェック #88346
  • スナップショット/復元
    • スナップショット復元と完了の INFO ロギング #88257 (問題: #86610
    • データブロブの削除中にリポジトリをブロックしないようにスナップショット削除を行う #86514
    • 進行状況を示すすべての S3 取得失敗後に再試行 #88015 (問題: #87243
    • 削除されたスナップショットなしで新しい IndexMetaDataGenerations を作成するのを高速化 #88344
    • HDFS リポジトリを HDFS 3.3.3 に更新 #88039
  • 統計
    • 使用状況に基づいてインジェストパイプライン統計をソート #88035
  • TLS
    • GET _ssl/certificates に発行者を追加 #88445
  • 変換
    • 変換設定リストに認可情報を追加 #87570
    • 各変換の num_failure_retries 設定を実装 #87361

新機能

  • 認証
    • API キー属性の更新をサポート(単一操作ルート) #88186
  • 健康
    • マスタースタビリティ健康指標パート 1(マスターが最近見られた場合) #86524
    • help_url を削除し、summary を症状に、user_actions を診断に変更 #88553 (問題: #88474
  • Infra/Core
    • ファイル設定サービス #88329
  • Infra/Logging
    • 安定したロギング API - 基本的なユースケース #86612
  • 機械学習
    • データフィード内の複合 aggs を一般利用可能にする #88589
  • 検索
    • _source フィールドマッパーにモードオプションを追加 #88211
  • TSDB
    • TSDB: 時系列インデックスのダウンサンプリング ILM アクションを実装 #87269 (問題: #68609
  • ベクトル検索

アップグレード

  • Infra/Core
    • Log4J 2.18.0 にアップグレード #88237
  • ネットワーク
    • Netty 4.1.77 にアップグレード #86630