7 条回复 · 7 位参与者
本次讨论主要提议放弃对 PyPy 的支持,理由是其维护停滞、核心依赖库(如 NumPy 和 PyArrow)已不支持、以及 CI 测试覆盖率低且长期失败。该提议获得了多位核心贡献者的一致赞同。讨论确认了后续处理流程,即无需发起正式投票,只需在迁移指南中记录此变更。
@Tian Gao: PyPy 维护不善,NumPy 已放弃支持,且 CI 长期失败无人修复,建议放弃支持以节省资源。
@Ruifeng Zheng: PyArrow 也不支持 PyPy,导致测试覆盖率低;建议参考过往做法,仅在迁移指南中说明,无需 SPIP 或正式投票。
@Hyukjin Kwon / Reynold Xin 等: 赞同放弃对 PyPy 的支持。
社区达成共识放弃 PyPy 支持,下一步将在迁移指南中添加相关说明,无需进行正式投票流程。
6 条回复 · 3 位参与者
讨论主要围绕如何在自定义 DataSource V2 中实现 SaveMode.Overwrite 以及如何处理表生命周期管理。Joeri 询问是否需要实现 CatalogPlugin,Mich 澄清对于 df.write.format(...).save() 模式,Spark 不经过 CatalogPlugin,连接器内部自行处理表的检测与创建是预期行为。
@Joeri van Ruth: 因 JDBC 写入性能不足,寻求利用 V2 API 实现高效的批量写入和 Overwrite 模式的最佳实践,特别是关于表创建和 Catalog 集成的困惑。
@Mich Talebzadeh: 建议使用 V2 API,并指出对于 format().save() 路径,无需实现 CatalogPlugin,连接器内部处理表生命周期(如 TRUNCATE 或 DROP+CREATE)是标准做法。
@Mich Talebzadeh: 针对 Overwrite 功能,建议声明 OVERWRITE_BY_FILTER 并实现 SupportsOverwriteV2,若表无分区则可忽略 OverwriteDynamic。
Joeri 明确了实现路径:不需要依赖 CatalogPlugin,直接在连接器内部实现表检测与创建逻辑,并按建议实现 Overwrite 接口。
1 条回复 · 2 位参与者
Sergei Repnikov 提交了一个关于 ANSI 模式的小型修复 PR,但因原 JIRA 报告人长期未响应,向社区询问后续处理流程。Mich Talebzadeh 建议将此类开发流程讨论从 user@ 转移至 dev@ 邮件列表,以获得提交者更好的关注。Sergei 随后采纳建议,在 dev@ 列表中正式请求代码审查并咨询最佳实践。
@Mich Talebzadeh: 指出 user@ 列表主要用于使用问题,PR 和贡献流程问题应在 dev@ 列表讨论;建议直接发邮件引用 JIRA 和 PR 链接请求审查。
@Sergei Repnikov: 提交了 PR #54644 修复 ANSI 模式配置建议,面临原审查者失联的困境,希望了解处理此类情况的标准礼仪和后续步骤。
提问者已采纳建议,将问题转发至 dev@ 邮件列表,目前等待社区成员进行代码审查或提供关于处理无响应审查者的进一步指导。
0 条回复 · 1 位参与者
本次讨论是关于 Apache Spark 4.2.0 中移除 `spark.sql.hive.convertCTAS` 配置项弃用警告的预告。该变更(SPARK-55719)实质上是恢复了 Spark 3.1.0 版本中引入的 SPARK-33693 提案,属于改进类型的 JIRA 任务。
@Dongjoon Hyun: 这是一个关于 Spark 4.2.0 版本中弃用警告变更的预告,旨在移除 `spark.sql.hive.convertCTAS` 的弃用警告。
@Dongjoon Hyun: 此变更(SPARK-55719)等同于撤销 Spark 3.1.0 中的 SPARK-33693,具体技术细节可参考相关 PR。
作者已发布相关 JIRA 和 PR 供社区查阅,作为一项改进提案推进。