Spark 3.0.3 版本发布

Spark 3.0.3 是一个维护版本,包含稳定性修复。此版本基于 Spark 的 branch-3.0 维护分支。我们强烈建议所有 3.0 用户升级到此稳定版本。

值得注意的更改

  • [SPARK-34421]: 自定义函数不能在带有 CTE 的临时视图中使用
  • [SPARK-34545]: 当将具有不同返回类型的 2 个 UDF 同时应用于 2 个列时,PySpark Python UDF 返回不一致的结果
  • [SPARK-34719]: 如果视图查询具有重复的列名,则失败
  • [SPARK-35463]: 在没有 shasum 的系统上跳过校验和检查
  • [SPARK-32924]: Web UI 上按持续时间排序错误
  • [SPARK-33482]: 扩展 FileScan 的 V2 数据源会阻止 exchange 重用
  • [SPARK-33504]: Spark 历史服务器中的应用程序日志包含敏感属性,例如密码,应该进行脱敏而不是纯文本
  • [SPARK-34424]: HiveOrcHadoopFsRelationSuite 在 seed 610710213676 时失败
  • [SPARK-34556]: 检查重复的静态分区列不遵守区分大小写的配置
  • [SPARK-34596]: NewInstance.doGenCode 不应抛出格式错误的类名错误
  • [SPARK-34763]: col(), $”" 和 df("name") 应该正确处理带引号的列名
  • [SPARK-34794]: DSL 中嵌套的高阶函数损坏
  • [SPARK-34798]: 修复不正确的连接条件
  • [SPARK-34876]: 不可为空的聚合可以在相关子查询中返回 NULL
  • [SPARK-34897]: 支持在嵌套列修剪后基于索引协调 schema
  • [SPARK-34909]: conv() 未能正确地将负数输入转换为无符号数
  • [SPARK-34922]: 使用更好的 CBO 成本函数
  • [SPARK-34963]: 嵌套列修剪无法从数组中提取不区分大小写的结构字段
  • [SPARK-34970]: 在 explain() 的输出中脱敏 map 类型选项
  • [SPARK-35080]: 带有相等谓词的相关子查询可能返回错误的结果
  • [SPARK-35096]: 如果 schema 不区分大小写,foreachBatch 会抛出 ArrayIndexOutOfBoundsException
  • [SPARK-35106]: 当使用动态分区覆盖时,HadoopMapReduceCommitProtocol 执行错误的重命名
  • [SPARK-35227]: 在 SparkSubmit 中,用新的存储库服务替换 Bintray 作为 spark-packages 解析器
  • [SPARK-35296]: Dataset.observe 断言失败
  • [SPARK-35482]: 在 BasicExecutorFeatureStep 中应使用区分大小写的块管理器端口密钥
  • [SPARK-35493]: spark.blockManager.port 不适用于驱动程序 pod
  • [SPARK-35659]: 避免将 null 写入 StateStore
  • [SPARK-35673]: Spark 在子查询中遇到无法识别的提示时失败
  • [SPARK-35679]: 将有效的 Timestamp 转换为微秒时溢出
  • [SPARK-34697]: 允许 DESCRIBE FUNCTION 和 SHOW FUNCTIONS 解释关于   (字符串连接运算符)
  • [SPARK-34772]: RebaseDateTime loadRebaseRecords 应该使用 Spark 类加载器而不是上下文
  • [SPARK-35127]: 当我们在不同的 stage-detail 页面之间切换时,新打开的页面中的条目项可能是空白的
  • [SPARK-35168]: mapred.reduce.tasks 应该是 shuffle.partitions 而不是 adaptive.coalescePartitions.initialPartitionNum
  • [SPARK-35566]: 修复 StateStoreRestoreExec 的输出行数
  • [SPARK-35714]: 修复执行器关闭期间的死锁
  • [SPARK-34534]: OneForOneBlockFetcher 中的新协议 FetchShuffleBlocks 导致数据丢失或正确性问题
  • [SPARK-34939]: 当无法反序列化广播的 map 状态时,抛出 fetch 失败异常

依赖项更改

虽然是一个维护版本,但我们仍然在此版本中升级了一些依赖项,它们是

  • [SPARK-35210]: 将 Jetty 升级到 9.4.40 以修复 ERR_CONNECTION_RESET 问题

已知问题

  • [SPARK-34529]: 在解析 windows 换行符 (CR LF) 时,spark.read.csv 抛出异常“lineSep’ 只能包含 1 个字符”

您可以查阅 JIRA 以获取 详细更改

我们要感谢所有社区成员为本次版本贡献补丁。


Spark 新闻存档