2018-09-08 Apache Spark 官方发布了Spark 2.3 的小版本--2.3.1,Release Notes 如下:
Sub-task
- [ SPARK-23706 ] - spark.conf.get(value,default = None)应该在PySpark中产生None
- [ SPARK-23748 ] - 支持从临时表中选择
- [ SPARK-23942 ] - PySpark的collect不会触发QueryExecutionListener
- [ SPARK-24334 ] - ArrowPythonRunner中的竞争条件导致Arrow内存分配器的不正常关闭
Bug
- [ SPARK-10878 ] - 通过Ivy解析Maven坐标时的竞态条件
- [ SPARK-19181 ] - 当平均executorDeserializeTime太短时,SparkListenerSuite.local指标失败。
- [ SPARK-19613 ] - 片状测试:StateStoreRDDSuite
- [ SPARK-21945 ] - pyspark -py-files在纱线客户端模式下不起作用
- [ SPARK-22371 ] - dag-scheduler-event-loop线程停止并显示错误尝试访问垃圾收集累加器5605982
- [ SPARK-23004 ] - 结构化流式引发“llegalStateException:已经提交或中止后无法移除”
- [ SPARK-23020 ] - 重新启用片状测试:org.apache.spark.launcher.SparkLauncherSuite.testInProcessLauncher
- [ SPARK- 23173] - from_json可以为标记为不可为空的字段生成空值
- [ SPARK-23288 ] - 结构化流式传输中写入记录的数量不正确
- [ SPARK-23291 ] - SparkR:substr:在SparkR数据框中,当位置大于1时,“substr”中的起始和结束位置参数给出了错误的结果
- [ SPARK-23340 ] - 将Apache ORC升级到1.4.3
- [ SPARK-23365 ] - 在落后任务中失败的DynamicAllocation可能导致挂起的火花作业
- [ SPARK-23406 ] - 串流自连接不起作用
- [ SPARK-23433 ] - java.lang.IllegalStateException:阶段的多个活动taskSet
- [ SPARK-23434 ] - Spark不应该警告HDFS文件路径的“metadata directory”
- [ SPARK-23436 ] - 不正确的日期列分区发现中的推断
- [ SPARK-23438 ] - 当驱动程序崩溃时,DStreams可能会丢失WAL
- [ SPARK-23448 ] - 当列不尊重数据类型时,Dataframe返回错误的结果
- [ SPARK-23449 ] - 额外的java选项在Docker上下文中失序
- [ SPARK-23457 ] - 首先为ParquetFileFormat注册任务完成侦听器
- [ SPARK-23462 ] - 改进`StructType`中的错误信息
- [ SPARK-23489 ] - 片状测试:HiveExternalCatalogVersionsSuite
- [ SPARK-23490 ] - 使用CreateTable中的现有表检查storage.locationUri
- [ SPARK- 23508] - BlockManagerId中的blockManagerIdCache可能导致OOM
- [ SPARK-23517 ] - 使pyspark.util._exception_message产生Py4JJavaError的Java端跟踪
- [ SPARK-23523 ] - 规则OptimizeMetadataOnlyQuery导致的结果不正确
- [ SPARK-23524 ] - 不应检查大型本地洗牌块的损坏情况。
- [ SPARK-23525 ] - ALTER TABLE CHANGE COLUMN不适用于外部配置单元表
- [ SPARK-23551 ] - 从`orc-mapreduce`中排除`hadoop-mapreduce-client-core`依赖
- [ SPARK-23569 ] - pandas_udf不适用于带类型注释的python函数
- [ SPARK-23570 ] - 在HiveExternalCatalogVersionsSuite中添加Spark-2.3
- [ SPARK- 23598] - WholeStageCodegen可能导致IllegalAccessError调用追加HashAggregateExec
- [ SPARK-23599 ] - UUID()表达式过于不确定
- [ SPARK-23608 ] - SHS需要attachSparkUI和detachSparkUI函数之间的同步
- [ SPARK-23614 ] - 使用缓存时,Union会产生不正确的结果
- [ SPARK-23623 ] - 避免在CachedKafkaConsumer中同时使用缓存的KafkaConsumer(kafka-0-10-sql)
- [ SPARK-23630 ] - Spark-on-YARN缺少hadoop配置的用户自定义
- [ SPARK-23637 ] - 如果同一个执行者被多次杀死,纱线可能会分配更多资源。
- [ SPARK-23639 ] - 使用代理用户时,SparkSQL CLI无法与Kerberized Metastore通信
- [ SPARK-23649 ] - 某些UTF-8字符上的CSV架构推断失败
- [ SPARK-23658 ] - InProcessAppHandle在getLogger中使用了错误的类
- [ SPARK-23660 ] - 当应用程序很小时,Yarn在群集模式下抛出异常
- [ SPARK-23670 ] - sparkUI中SparkPlanGraphWrapper的内存泄漏
- [ SPARK-23671 ] - SHS忽略了重播线程的数量
- [ SPARK-23697 ] - Spark 1.x的累加器不再适用于Spark 2.x.
- [ SPARK-23728 ] - 预期异常测试流的ML测试在2.3上失败
- [ SPARK-23729 ] - 全局解析会破坏文件/档案的远程命名
- [ SPARK-23754 ] - Python UDF中的StopIterator异常导致部分结果
- [ SPARK-23759 ] - 无法将Spark UI绑定到特定主机名/ IP
- [ SPARK-23760 ] - CodegenContext.withSubExprEliminationExprs应正确保存/恢复CSE状态
- [ SPARK-23775 ] - Flaky测试:DataFrameRangeSuite
- [ SPARK-23780 ] - 无法将googleVis库与新SparkR一起使用
- [ SPARK-23788 ] - StreamingQuerySuite中的竞争条件
- [ SPARK-23802 ] - PropagateEmptyRelation可以使查询计划处于未解决状态
- [ SPARK-23806 ] - 广播。与动态分配一起使用时,unpersist可能会导致致命异常
- [ SPARK-23808 ] - 测试火花会话应设置默认会话
- [ SPARK-23809 ] - 应该通过getOrCreate设置Active SparkSession
- [ SPARK-23815 ] - Spark编写器动态分区覆盖模式无法在多级分区上写入输出
- [ SPARK-23816 ] - 杀死推测任务时的FetchFailedException
- [ SPARK-23823 ] - ResolveReferences失去了正确的来源
- [ SPARK-23827 ] - StreamingJoinExec应确保输入数据被分区为特定数量的分区
- [ SPARK-23835 ] - 当Dataset.as将列从可空类型转换为非可空类型时,null双打将以静默方式转换为-1
- [ SPARK-23850 ] - 默认情况下,我们不应该从UI编辑用户名|用户| url
- [ SPARK-23852 ] - Parquet MR错误可导致错误的SQL结果
- [ SPARK-23853 ] - 跳过需要在PySpark中构建的hive支持的doctests
- [ SPARK-23868 ] - 修复literals.sql.out中的scala.MatchError
- [ SPARK-23941 ] - 特定火花应用名称上的Mesos任务失败
- [ SPARK-23971 ] - 不应在测试套件中泄漏Spark会话
- [ SPARK-23986 ] - 加入后使用过多avg聚合时出现CompileException
- [ SPARK-23989 ] - 使用`SortShuffleWriter`时,数据将被覆盖
- [ SPARK-23991 ] - allocateBlocksToBatch时数据丢失
- [ SPARK-24002 ] - 由org.apache.parquet.io.api.Binary $ ByteBufferBackedBinary.getBytes引起的任务不可序列化
- [ SPARK-24007 ] - FloatType和DoubleType的EqualNullSafe可能会由codegen生成错误的结果。
- [ SPARK-24021 ] - 修复BlacklistTracker的updateBlacklistForFetchFailure中的错误
- [ SPARK-24022 ] - Flaky测试:SparkContextSuite
- [ SPARK-24033 ] - 在Spark 2.3中破坏了LAG窗口功能
- [ SPARK-24062 ] - 无法在ThriftServer中使用SASL加密
- [ SPARK-24067 ] - Backport SPARK-17147至2.3(Spark Streaming Kafka 0.10 Consumer无法处理非连续偏移(即Log Compaction))
- [ SPARK-24068 ] - CSV架构推断不适用于压缩文件
- [ SPARK-24085 ] - 标量子查询错误
- [ SPARK-24104 ] - SQLAppStatusListener会覆盖onDriverAccumUpdates上的指标而不是更新它们
- [ SPARK-24107 ] - ChunkedByteBuffer.writeFully方法未重置限制值
- [ SPARK-24133 ] - 读取包含大字符串的Parquet文件可能会因java.lang.ArrayIndexOutOfBoundsException而失败
- [ SPARK-24166 ] - InMemoryTableScanExec不应在执行者端访问SQLConf
- [ SPARK-24168 ] - WindowExec不应在执行方访问SQLConf
- [ SPARK-24169 ] - JsonToStructs不应在执行者端访问SQLConf
- [ SPARK-24214 ] - StreamingRelationV2 / StreamingExecutionRelation / ContinuousExecutionRelation.toJSON不应该失败
- [ SPARK-24230 ] - Parquet 1.10升级在矢量化阅读器中出错
- [ SPARK-24255 ] - 在SparkR描述中需要Java 8
- [ SPARK-24257 ] - LongToUnsafeRowMap计算新的尺寸可能是错误的
- [ SPARK-24259 ] - Arrow的ArrayWriter产生错误的输出
- [ SPARK-24263 ] - 关于openjdk的SparkR java check break
- [ SPARK-24309 ] - AsyncEventQueue应该处理来自监听器的中断
- [ SPARK-24313 ] - 集合函数解释执行不适用于复杂类型
- [ SPARK-24322 ] - 将Apache ORC升级到1.4.4
- [ SPARK-24364 ] - globbing后删除文件可能会使StructuredStreaming作业失败
- [ SPARK-24373 ] - “重新分析计划后,当分析的计划不同时,”df.cache()df.count()“不再急切地缓存数据
- [ SPARK-24384 ] - 带有.py文件的spark-submit --py文件在上下文初始化之前无法在客户端模式下工作
- [ SPARK-24399 ] - 重复使用的Exchange用于不应该使用的地方
- [ SPARK-24414 ] - 阶段页面未显示失败时的所有任务尝试
New featrue
- [ SPARK-23948 ] - 在submitMissingTasks中触发mapstage的作业监听器
- [ SPARK- 24465] - LSHModel应该支持结构化流转换
- [ SPARK-24710 ] - 决策树的信息增益比率
Improvement
- [ SPARK-23040 ] - 如果指定了聚合器或订购,则BlockStoreShuffleReader的返回Iterator不可中断
- [ SPARK-23553 ] - 测试不应采用`spark.sql.sources.default`的默认值
- [ SPARK-23624 ] - 修改方法pushFilters的文档
- [ SPARK-23628 ] - WholeStageCodegen可以生成包含太多参数的方法
- [ SPARK-23644 ] - 带代理的SHS不显示应用程序
- [ SPARK-23645 ] - 无法使用关键字参数调用pandas_udf
- [ SPARK-23691 ] - 尽可能在PySpark测试中使用sql_conf util
- [ SPARK-23695 ] - PySpark的Kinesis测试在其jar丢失但启用时出现混乱错误消息
- [ SPARK-23769 ] - 删除不必要的scalastyle检查禁用
- [ SPARK-23822 ] - 改进Parquet模式不匹配的错误消息
- [ SPARK- 23838] - SparkUI:在SQL选项卡中显示为“已完成”的SQL查询
- [ SPARK-23867 ] - 日志消息中的com.codahale.metrics.Counter输出没有toString方法
- [ SPARK-23962 ] - 来自SQLMetricsTestUtils.currentExecutionIds的Flaky测试
- [ SPARK-23963 ] - 随着列数的增加,基于文本的Hive表的查询速度不成比例地增长
- [ SPARK-24014 ] - 将onStreamingStarted方法添加到StreamingListener
- [ SPARK- 24128] - 在隐式笛卡尔积错误信息中提及spark.sql.crossJoin.enabled
- [ SPARK-24188 ] - / api / v1 /版本无效
- [ SPARK-24246 ] - 通过在可用时设置原因来改进AnalysisException
- [ SPARK-24262 ] - 修复UDF错误消息中的拼写错误
Test
- [ SPARK-22882 ] - StructuredStreaming的ML测试:spark.ml.classification
- [ SPARK-22883 ] - StructuredStreaming的ML测试:spark.ml.feature,AM
- [ SPARK-22915 ] - 结构化流的ML测试:spark.ml.feature,NZ
- [ SPARK-23881 ] - 片状测试:JobCancellationSuite。“shuffle reader的可中断迭代器”
Task
- [ SPARK-23601 ] - 从发行版中删除.md5文件
- [ SPARK-24392 ] - 将pandas_udf标记为实验
Doc
- [ SPARK-23329 ] - 使用三角函数的参数和返回值更新函数描述
- [ SPARK-23642 ] - 用于LongAccumulator的isZero scaladoc描述了错误的方法
- [ SPARK-24378 ] - spark 2.3.0中date_trunc函数的错误示例
- [ SPARK-24444 ] - 改进pandas_udf GROUPED_MAP文档以解释列分配
参考:
https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12315420&version=12342432
http://spark.apache.org/news/spark-2-3-1-released.html
http://spark.apache.org/docs/2.3.1/