Elasticsearch バージョン 8.14.0

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

破壊的変更

  • セキュリティ
    • replication が割り当てられている場合、DLS/FLS を防止 #108600
    • rewrite パラメータを使用した validate query API に対して、より厳格な Document Level Security (DLS) ルールを適用 #105709
    • min_doc_count が 0 に設定されている場合、terms aggregations に対してより厳格な Document Level Security (DLS) ルールを適用 #105714

既知の問題

  • バージョン 8.11.4 以前からクラスターをアップグレードする際、クラスターにマスター候補ノード以外のノードが含まれている場合、これらのアップグレードされたノードの新機能に関する情報がマスターノードに正しく登録されない可能性があります。これにより、8.12.0 以降に追加された新機能がアップグレードされたクラスターで利用できなくなることがあります。クラスターが ECK 2.12.1 以上で実行されている場合、アップグレードの最終化に問題が生じる可能性があります。この問題を解決するには、すべての Elasticsearch ノードがアップグレードされた後、マスター候補ノード以外のノードでローリング再起動を実行してください。この問題は 8.15.0 で修正されています。

バグ修正

  • 集計
    • インデックスアクセス制御リストが非 null の場合、terms aggs の livedocs をクロスチェック #105714
    • ESQL: datetime 用の VALUES agg を有効にする #107016
    • フィルターを使用した TTest 集計での IOOBE を修正 #109034
    • 標準 InternalStats コンストラクタでの stats フォーマットの検証 #107678 (問題: #107671)
  • アプリケーション
    • [バグ修正] コネクタ API - termquery でのステータスシリアル化の問題を修正 #108365
    • [コネクタ API] toXContent のフィルタリング検証のバグを修正 #107467
    • [コネクタ API] *_doc_count nullable フィールドの解析に関するバグを修正 #108854
    • [コネクタ API] アクセス制御同期のための誤ったターゲットインデックスに関するバグを修正 #109097
  • 認可
    • モニタ権限を持つユーザーは、keep_alive を設定していても async_search/status エンドポイントにアクセスできます #107383
  • CAT API
    • _cat/nodes での数値ソートを修正 #106189 (問題: #48070)
  • CCR
    • ccr API に ?master_timeout クエリパラメータを追加 #105168
  • CRUD
    • noop_update_total_bulk を使用しているときに更新されない問題を修正 #105745 (問題: #105742)
    • 正しいシステムインデックスバルクエグゼキュータを使用 #106150
  • クラスター調整
    • 無限 ?master_timeout のサポートを修正 #107050
  • データストリーム
    • ecs テンプレートに非インデックスフィールドを追加 #106714
    • クラスターブロック後の失敗リダイレクトを再試行する際のバルク NPE を修正 #107598
    • DS エイリアスをロールオーバーする際のエラーメッセージを改善 #106708 (問題: #106137)
    • DSL 保持の一環としてダウンサンプリングが進行中の場合のみ、ダウンサンプリングされたインデックスの削除をスキップ #109020
  • ダウンサンプリング
    • ダウンサンプリングアクションリクエストのシリアル化を修正 #106919 (問題: #106917)
  • EQL
    • SequenceMatcher で回路ブレーカーに負のバイト数を追加する際に #addWithoutBreaking を使用 #107655
  • ES|QL
    • ESQL: aggs で BUCKET グルーピング式を再利用できるようにする #107578
    • ESQL: FROM コマンドでの引用を無効にする #108431
    • ESQL: インデックスからのデータを使用する際の MV_DEDUPE を修正 #107577 (問題: #104745)
    • ESQL: 集約グルーピングの解決に失敗した際のエラーメッセージを修正 #108101 (問題: #108053)
    • ESQL: COUNT プッシュダウンで全フィールドを MV として扱うのを修正 #106720
    • ESQL: 論理依存関係チェックを再有効化 #105860
    • ESQL: 定数に対する中央値、カウント、count_distinct #107414 (問題: #105248, #104900)
    • ES|QL: 補助(4バイト)文字を持つ長さゼロの部分文字列を修正 #107183
    • ES|QL: TEXT フィールドでの IN 演算子の使用を修正 #106654 (問題: #105379)
    • ES|QL: 関数内の TEXT フィールドのサポートを改善 #106810
    • 可変引数関数のシグネチャのドキュメント生成を修正 #107865
    • [ESQL] date_diff をすべての引数が必要であるとマーク #108834 (問題: #108383)
  • 健康
    • HealthNode 永続タスクが存在する場合、チェックを停止しない #105449 (問題: #98926)
    • 健康モニタの同時実行性修正 #105674 (問題: #105065)
  • ハイライト
    • preTags および postTags パラメータの空の値をチェック #106396 (問題: #69009)
    • 統一ハイライターでの不一致なテキストトリミングの修正 #99961 (問題: #101803)
  • インフラ/CLI
    • JDK 22 および 22.0.1 の G1 バグの回避策 #108571
  • インフラ/コア
    • 同じ機能が通常および履歴として宣言されているかどうかをチェック #106285
    • セキュア設定を含むように AffixSetting.exists を修正 #106745
    • 人間可読形式でバージョンが表示されなかった get index settings (human=true) の回帰を修正 #107447
    • Nativeaccess: すべての位置した libsystemds をロードしようとする #108238 (問題: #107878)
    • IndexVersion.toString へのいくつかの参照を toReleaseVersion を使用するように更新 #107828 (問題: #107821)
    • TransportVersion.toString へのいくつかの参照を toReleaseVersion を使用するように更新 #107902
  • インフラ/ロギング
    • addAffixMapUpdateConsumer を使用して AffixSetting を更新する際にログを記録 #97072
  • インフラ/ノードライフサイクル
    • シャードコピーを計算する際に ShardRouting ロールを考慮 #106063
    • デフォルトでシャットダウン時に http 接続を無限に待機 #106511
  • インフラ/スクリプティング
    • painless execute での null スコアラーに対するガード #109048 (問題: #43541)
    • Painless: FIND および MATCH 操作で真の正規表現制限係数を適用 #105670
  • インジェストノード
    • StackOverflowErrors からの悪い正規表現をキャッチ #106851
    • 拡張機能が欠落している場合の uri_parts プロセッサの動作を修正 #105689 (問題: #105612)
    • Enterprise geoip ドキュメントから先頭の is_ プレフィックスを削除 #108518
    • geoip databaseType 検証をわずかに改善 #106889
  • ライセンス
    • 残存するライセンス警告ヘッダーを修正 #108031 (問題: #107573)
  • 機械学習
    • ML 割り当て通知者の NPE を修正 #107312
    • XLMRoBERTa トークナイザーでの非負でなければならないエラーを修正 #107891 (問題: #104626)
    • 隣接集計が空のバケットを含む場合のスパイク、ディップ、分布変更バケットの位置を修正 #106472
    • OpenAI 埋め込みパーサーをより柔軟にする #106808
  • マッピング
    • terms クエリでの重複を排除 #106381
    • allowedFields のサポートを getMatchingFieldNames および getAllFields に拡張 #106862
    • \

非推奨

  • マッピング
    • fields を無視されるシナリオで許可することを非推奨にする #106031

強化

  • 集約
    • PriorityQueueBigArrays に基づいて追加 #106361
    • random_sampler 集約用の新しい shard_seed パラメータを追加 #104830
  • 割り当て
    • 割り当て統計を追加 #105894
    • /_cat/allocation 出力にインデックス予測を追加 #97561
  • アプリケーション
    • [プロファイリング] TopN 関数 API を追加 #106860
    • [プロファイリング] インデックス設定をオーバーライドできるようにする #106172
    • [プロファイリング] フレームグラフのシリアル化を高速化 #105779
  • 認証
    • クライアント認証を使用した JWT でプロファイルをアクティブにすることをサポート #105439 (問題: #105342)
  • 認証
    • ユーザーが自分の非同期検索タスクのステータスを取得できるようにする #106638
    • [セキュリティソリューション] kibana_system 用のサードパーティエージェントインデックスに read 権限を追加 #107046
  • データストリーム
    • Kibana レポートテンプレートにデータストリームライフサイクルを追加 #106259
  • ES|QL
    • ES|QL Locate 関数を追加 #106899 (問題: #106818)
    • ES|QL signum 関数を追加 #106866
    • enrich 演算子のステータスを追加 #106036
    • 新しい OGC 関数 ST_X と ST_Y を追加 #105768
    • ブロックビルダーでの配列サイズ変更を調整 #106934
    • ESQL での enrich フィールドのバルクロード #106796
    • TEXT フィールドの ENRICH サポート #106435 (問題: #105384)
    • ESQL: 多くのステータス結果にタイマーを追加 #105421
    • ESQL: スタッツ式の中でグルーピングキーを許可 #106579
    • ESQL: 式の検証フェーズを導入 #105477 (問題: #105425)
    • ESQL: デバッグレベルでのクエリログ #108257
    • ESQL: 正規表現の改善 #106429
    • ESQL: 定数の合計 #105454
    • ESQL: ST_DISJOINT をサポート #107007
    • ESQL: CASE の部分的な折りたたみをサポート #106094
    • ESQL: より高速なフィールドキャップを使用 #105067
    • ESQL: スパンで BUCKET を拡張 #107272
    • ESQL: データノードでの削減を実行 #106516
    • ENRICH のサポートを ES インジェストプロセッサーによってサポートされる完全なセットに拡張 #106186 (問題: #106162)
    • 順序バイトリファレンスブロックを導入 #106852 (問題: #106387)
    • enrich ルックアップでの順序を活用 #107449
    • 大きな配列ブロックをシリアル化 #106373
    • 大きな配列ベクトルをシリアル化 #106327
    • ArrayVectors のためのシリアル化を専門化 #105893
    • 配列ブロックのシリアル化を専門化 #106102
    • BytesRefArray のシリアル化を高速化 #106053
    • ST_CONTAINS と ST_WITHIN をサポート #106503
    • 幾何学列と他の幾何学または文字列の間の ST_INTERSECTS をサポート #104907 (問題: #104874)
  • エンジン
    • ロック待機を除外したインデックスフラッシュ時間を計算するメトリックを追加 #107196
  • ハイライト
    • フィールドレベルでエンコーダーと tags_schema ハイライト設定を有効にする #107224 (問題: #94028)
  • ILM+SLM
    • ILM 縮小アクション後に最終インデックスでの書き込みを再有効化するフラグを追加 #107121 (問題: #106599)
  • インデックス API
    • IndexTemplateRegistry アセットのインストールを無限に待つ #105985
  • インフラ/CLI
    • 検索層 GC オプションを強化 #106526
    • KeyStoreWrapper での KDF 繰り返し回数を増加 #107107
  • Infra/Core
    • NodeMetadata にプラグイン可能な BuildVersion を追加 #105757
  • インフラ/メトリクス
    • 更新リクエストのメーターリングのためのインフラを追加 #105063
    • DocumentParsingObserver がシステムインデックスをスキップできるように indexName を受け入れる #107041
  • インフラ/スクリプティング
    • 文字列 sha512() painless 関数 #99048 (問題: #97691)
  • Ingest Node
    • geoip プロセッサに匿名 IP データベースのサポートを追加 #107287 (問題: #90789)
    • geoip プロセッサにエンタープライズデータベースのサポートを追加 #107377
    • geoip stats API に cache_stats を追加 #107334
    • enrich ポリシーインデックスでデータストリームをサポート #107291 (問題: #98836)
  • 機械学習
    • すべての推論エンドポイントに対して GET _inference を追加 #107517
    • 推論 API にタイムアウトパラメータを追加 #107242
    • Cohere テキスト埋め込み API からの 500 エラー応答での再試行を有効にする #105797
  • マッピング
    • 新しい密なベクトルフィールドのデフォルトインデックスとして int8_hnsw を設定 #106836
  • ランキング
    • パーサー専用アプローチを使用したリトリーバーを追加 #105470
  • 検索
    • Lucene スペイン語の複数形ステマーを追加 #106952
    • modelIdmodelTextKnnVectorQueryBuilder に追加 #106068
    • int8 用の SIMD (Neon) 最適化されたベクトル距離関数を追加 #106133
    • 検索負荷のオートスケーリングのためのトランスポートバージョンを追加 #106377
    • minimize_roundtrips での CCS は各 SearchResponse のインクリメンタルマージを実行 #105781
    • 進行中の検索タスクを追跡 #107129
  • セキュリティ
    • クロスクラスター API キーの無効化には manage_security が必要 #107411
    • 返された API キーの所有者 realm_type を表示 #105629
  • スナップショット/復元
    • S3 への最大接続数の設定を追加 #107533
    • ログレベルによって異なるスナップショットの失敗を区別 #105622
  • 統計
    • (API+) CAT ノードのエイリアスをシャードヘッダーに追加して CAT 割り当てに一致させる #105847
    • doc stats にバイト単位の合計サイズを追加 #106840 (問題: #97670)
  • TSDB
    • 短絡ダウンサンプル実行の改善 #106563
    • TSDB でのルーティングフィールドとしての非キーワード次元をサポート #105501
    • テキストフィールドはデフォルトで TSDB インデックスに保存される #106338 (問題: #97039)
  • トランスフォーム
    • 障害前にノードシャットダウンを確認 #107358 (問題: #100891)
    • 変換がすでに失敗している場合、ノード再起動時にエラーをログに記録しない #106171 (問題: #106168)

新機能

  • アプリケーション
    • 検索アプリケーションの Search API に typed_keys を許可 #108007
    • [コネクタ API] コネクタを削除する際に同期ジョブをクリーンアップするサポート #107253
  • ES|QL
    • ESQL: 値の集約関数 #106065 (問題: #103600)
    • ESQL: 式によるソートを許可し、通常のフィールドだけでなく #107158
    • NodeClient::execute を通じて ES|QL リクエストをサポート #106244
  • インデックス API
    • エイリアスアクション応答に詳細なエラーリストを追加 #106514 (問題: #94478)
  • 機械学習
    • Cohere 再ランクを _inference サービスに追加 #106378
    • 推論サービスに Azure OpenAI 埋め込みのサポートを追加 #107178
    • デフォルトの単語ベースのチャンクを作成 #107303
    • メッセージのリストとインデックスフィールドの構造を決定するためのテキスト構造エンドポイント #105660
  • マッピング
    • サブオブジェクトが false の場合にオブジェクトマッピングをフラット化 #103542 (問題: #99860, #103497)
  • セキュリティ
    • プロファイル UID で API キーを取得およびクエリ #106531
  • ベクトル検索
    • knn-search での16進エンコードされたバイトベクトルのサポートを追加 #105393

アップグレード

  • Infra/Core
    • jna を 5.12.1 にアップグレード #105717
  • Ingest Node
    • インジェストアタッチメントプラグインで tika バージョンを 2.9.1 に更新 #106315
  • ネットワーク
    • Netty 4.1.107 にアップグレード #105517
  • パッケージング
    • バンドルされた JDK を Java 22 に更新 (再度) #108654