Spark リリース 2.4.8

Spark 2.4.8 は、安定性、正確性、およびセキュリティの修正を含むメンテナンスリリースです。このリリースは、Spark の branch-2.4 maintenance branch に基づいています。すべての 2.4 ユーザーに、この安定版リリースへのアップグレードを強く推奨します。

主な変更点

  • [SPARK-21492]: SortMergeJoin におけるメモリリークの修正
  • [SPARK-25271]: すべての列が NULL である Parquet テーブルの作成で例外が発生する
  • [SPARK-26625]: spark.redaction.regex に oauthToken を含めるべき
  • [SPARK-26645]: CSV スキーマ推論バグが decimal(9,-1) と推論する
  • [SPARK-27575]: Spark は spark.yarn.dist.* の既存の値をマージせずに上書きする
  • [SPARK-27872]: Driver と executor が異なるサービスアカウントを使用すると、pull secrets が壊れる
  • [SPARK-29574]: ユーザー提供の Hadoop を使用した Spark が Kubernetes で動作しない
  • [SPARK-30201]: HiveOutputWriter standardOI は ObjectInspectorCopyOption.DEFAULT を使用すべき
  • [SPARK-32635]: pyspark.sql.functions.lit() 関数を DataFrame キャッシュで使用すると、誤った結果が返される
  • [SPARK-32708]: DataSourceV2 を使用したクエリ最適化で Exchange の再利用に失敗する
  • [SPARK-32715]: Broadcast ブロックピースがメモリリークする可能性がある
  • [SPARK-32738]: スレッドセーフなエンドポイントが致命的なエラーによりハングする可能性がある
  • [SPARK-32794]: 特定の状態を持つクエリ + データなしバッチ + V1 ストリーミングソースで、マイクロバッチエンジンにまれなコーナーケースエラーが発生する
  • [SPARK-32815]: glob メタ文字を含むファイルパスでの LibSVM データソース読み込みエラーを修正
  • [SPARK-32836]: DataStreamReaderWriterSuite がライターオプションを正しくチェックするように修正
  • [SPARK-32872]: BytesToBytesMap が MAX_CAPACITY で成長しきい値を超える
  • [SPARK-32900]: UnsafeExternalSorter.SpillableIterator は、入力に NULL があり、ラディックスソートが使用されている場合にスピルできない
  • [SPARK-32901]: UnsafeExternalSorter がスピル中に SparkOutOfMemoryError をスローする可能性がある
  • [SPARK-32908]: percentile_approx() が不正確な結果を返す
  • [SPARK-32999]: TreeNode.nodeName が不正なクラス名エラーをスローしないようにすべき
  • [SPARK-33094]: ORC フォーマットが DS オプションから HDFS ファイルシステムへ Hadoop 設定を伝播しない
  • [SPARK-33101]: LibSVM フォーマットが DS オプションから HDFS ファイルシステムへ Hadoop 設定を伝播しない
  • [SPARK-33131]: GROUPING SETS が HAVING 句で修飾された列名を解決できない問題を修正
  • [SPARK-33136]: V2 書き込みコマンドの解決中に、複雑な型の NULL 可性が壊れている
  • [SPARK-33183]: オプティマイザールール EliminateSorts のバグ
  • [SPARK-33230]: FileOutputWriter ジョブが同じ秒に起動すると重複した JobID が生成される
  • [SPARK-33268]: PythonUserDefinedType とのデータキャストにおけるバグを修正
  • [SPARK-33277]: Python/Pandas UDF がオフヒープベクトル化リーダーの直後にあると、executor がクラッシュする可能性がある
  • [SPARK-33292]: Literal ArrayBasedMapData の文字列表現を曖昧にならないようにする
  • [SPARK-33338]: リテラルマップを使用した GROUP BY が失敗しないようにすべき
  • [SPARK-33339]: Pyspark アプリケーションが例外ではない原因でハングする
  • [SPARK-33372]: InSet バケットプルーニングを修正
  • [SPARK-33472]: RemoveRedundantSorts を EnsureRequirements の前に適用すると IllegalArgumentException が発生する
  • [SPARK-33588]: SHOW TABLE EXTENDED のパーティション仕様が spark.sql.caseSensitive を尊重しない
  • [SPARK-33593]: バイナリパーティション値でベクトルリーダーが不正なデータを受け取る
  • [SPARK-33726]: 重複したフィールド名が集計中に誤った結果を引き起こす
  • [SPARK-33733]: PullOutNondeterministic は決定論的フィールドをチェックして収集すべき
  • [SPARK-33756]: BytesToBytesMap の iterator hasNext メソッドは冪等であるべき
  • [SPARK-34125]: EventLoggingListener.codecMap をスレッドセーフにする
  • [SPARK-34187]: オフセット検証のチェック時に、ポーリング中に取得した利用可能なオフセット範囲を使用する
  • [SPARK-34212]: Parquet テーブルでは、Hive で decimal 型の精度とスケールを変更した後、Spark が不正な値を読み取る
  • [SPARK-34229]: Avro はファイルスキーマで decimal 値を読み取るべき
  • [SPARK-34260]: 一時ビューを 2 回作成すると UnresolvedException が発生する
  • [SPARK-34273]: SparkContext が停止したときに BlockManager を再登録しない
  • [SPARK-34318]: Dataset.colRegex は、改行を含む列名と修飾子で機能すべき
  • [SPARK-34327]: ビルドプロセス中にパスワードのインライン化を省略する
  • [SPARK-34596]: NewInstance.doGenCode は不正なクラス名エラーをスローするべきではありません
  • [SPARK-34607]: NewInstance.resolved が不正なクラス名エラーをスローしないようにすべき
  • [SPARK-34724]: Interpreted evaluation を getClass.getMethod を使用するように修正 (getDeclaredMethod ではなく)
  • [SPARK-34726]: collectToPython のタイムアウトを修正
  • [SPARK-34776]: 特定の struct 操作で Catalyst エラー (gen_alias が見つかりません)
  • [SPARK-34811]: fs.s3a.access.key をシークレットやトークンと同様にレッドクトする
  • [SPARK-34855]: SparkContext - ローカル lazy val の使用を回避する
  • [SPARK-34876]: NULL 不可の集計は、相関サブクエリで NULL を返す可能性があります
  • [SPARK-34909]: conv() は負の入力を正しく符号なしに変換しません
  • [SPARK-34939]: ブロードキャストされたマップステータスをデシリアライズできない場合に、取得失敗例外をスローします
  • [SPARK-34963]: ネストされた列のプルーニングは、配列から大文字小文字を区別しない struct フィールドを抽出するのに失敗します
  • [SPARK-35080]: 等価性述語を持つ相関サブクエリは間違った結果を生成する可能性があります
  • [SPARK-35278]: Invoke は正しいパラメータ数のメソッドを見つけるべき
  • [SPARK-35288]: StaticInvoke は、引数クラスの正確な一致なしでメソッドを見つけるべき

依存関係の変更

  • [SPARK-30228]: zstd-jni を 1.4.4-3 に更新
  • [SPARK-33831]: Jetty を 9.4.34 に更新
  • [SPARK-33333]: Jetty を 9.4.28.v20200408 にアップグレード
  • [SPARK-33405]: commons-compress を 1.20 にアップグレード
  • [SPARK-33725]: snappy-java を 1.1.8.2 にアップグレード
  • [SPARK-34449]: CVE-2020-27218 を修正するために Jetty をアップグレード
  • [SPARK-34988]: CVE-2021-28165 を修正するために Jetty をアップグレード

既知の問題

JIRA で 詳細な変更点 を確認できます。

このリリースにパッチを提供してくださったすべてのコミュニティメンバーに感謝いたします。


Spark ニュースアーカイブ