本月报对 4 月份社区研发进行了整理统计,发现在这段时间, Apache DolphinScheduler 主干(dev)合并强度明显提升:一方面是云原生部署与插件生态的持续补齐,另一方面则是面向可维护性的大规模清理与重构。
统计口径:apache/dolphinscheduler 仓库在 2026-04-01 至 2026-04-30 期间 Merged 的 PR(共 53 个),并对每个 PR 提取“分支、合并时间、文件清单、行级 diff 统计”。
以下为月报详情:
本月触达最频繁的模块(按 PR “触达次数”统计):
1) 云原生部署:Helm/Docker 继续补齐“能跑起来”
4 月的部署相关工作有一个明显特征:不是追新功能,而是把用户在真实环境里最容易踩坑的地方逐一补上。
2) Master 可靠性:把“超时/状态机”做成可测试的事件链路
调度系统最怕两件事:超时处理不一致导致状态漂移,以及缺少可回归的测试导致修了又坏。本月围绕超时做了三件关键事:
这类改动对终端用户的直观价值是:同样的超时场景,系统更不容易“卡住”,也更不容易出现告警漏发/状态不一致。
3) 插件生态:EMR Serverless + SQL 任务能力增强
如果你在用 DolphinScheduler “统一编排多引擎任务”,4 月会更有感:
- 新增 Amazon EMR Serverless 任务插件(#18069)
- SQL 任务支持从资源文件读取 SQL,并支持参数占位符(#18020)
- DataX:支持 writer 参数
batchSize(#18192)
4) 工程化治理:大规模清理 + 重命名,长期收益明显
4 月出现了不少“看起来像 chore,但其实是在降维护成本”的 PR:
- 接口命名重构:
IWorkflowExecutionRunnable/ITaskExecutionRunnable → IWorkflowExecution/ITaskExecution(#18163)
这类改动通常不会在 UI 上“立刻多一个按钮”,但会让后续迭代更快、Review 更容易、Bug 面更小。
下面按“功能特性 / 性能优化 / Bug 修复 / 架构改进”分组列出本月最值得关注的 PR(每条均可在 GitHub 对应 PR 页面审计)。
功能特性
- #18069 新增 Amazon EMR Serverless 任务插件(作者:@norrishuang,+1958 / -0)
面向云上 Serverless 计算的任务类型补齐,适合希望把作业执行完全托管在云侧的团队。 - #18138 监控页支持查看 Active Master/Worker 的运行中任务与工作流(作者:@ruanwenjun,+1086 / -258)
运维视角更聚焦“这个节点现在跑什么”,减少排查成本。 - #18020 SQL 任务支持从资源文件读取 SQL + 参数占位符(作者:@macdoor,+409 / -27)
大 SQL 脚本可版本化管理,降低复制粘贴与误改风险。 - #18192 DataX writer 参数新增
batchSize 支持(作者:@leocook,+110 / -0)
典型“配置级增强”,对大吞吐场景更友好。
性能优化
- #18152 Lombok 注解简化代码(作者:@SbloodyS,+244 / -4113)
本质是“用更少的样板代码表达同样逻辑”,间接提升可读性与维护效率(删除行数大,属于集中清理型变更)。 - #18128 Master 处理超时事件时移除冗余完成检查(作者:@njnu-seafish,+0 / -7)
小改动但很“对症”:减少无意义检查,降低事件处理链路的复杂度。
Bug 修复
- #18140 修复 Docker Compose 部署错误(作者:@SbloodyS,+41 / -134)
直接影响“开箱即用”,对新用户/测试环境尤为重要。 - #18146 修复 CONTINUE 失败策略下工作流实例 RUNNING 卡死(作者:@SbloodyS,+164 / -2)
典型生产级问题:状态卡死会导致资源被占用、重跑困难。 - #18183 修复 API 权限问题:用户可在未授权项目删除任务定义(作者:@ruanwenjun,+30 / -1)
权限类问题优先级很高,建议所有用户关注并升级。 - #18170 修复 OBS 存储子目录列表返回异常(作者:@CloudExtreme,+223 / -4)
对接对象存储的用户会更有感。
架构改进
- #18163 统一命名:IWorkflowExecutionRunnable/ITaskExecutionRunnable → IWorkflowExecution/ITaskExecution(作者:@ruanwenjun,+2000 / -2000)
这类“对称改动”意味着 API 语义更清晰,后续扩展点更容易维护,但需要下游二次开发注意编译适配。 - #18003 DSIP-95:补数场景下依赖功能完善(作者:@det101,+733 / -19)
补数(Backfill)是调度系统的高频痛点,这类改动通常能显著减少“历史区间重跑不一致”的隐性成本。 - #18124 Helm:升级 Zookeeper Chart 版本(作者:@SbloodyS,+1840 / -5)
属于“云原生基础设施”方向的工程化投入。
按 PR 作者统计(不是 commit author),并汇总每位作者 PR 数与行级变更:
- 如果你在做多引擎编排:关注 EMR Serverless 插件(#18069)与 SQL 资源文件能力(#18020)。
- GitHub: https://github.com/apache/dolphinscheduler
- 官网:https://dolphinscheduler.apache.org/en-us
- 订阅开发者邮件:dev@dolphinscheduler@apache.org(向邮箱发送任意内容,收到邮件后回复同意订阅即可)
- YouTube:https://www.youtube.com/@apachedolphinscheduler
- Slack:https://join.slack.com/t/asf-dolphinscheduler/shared_invite/zt-1cmrxsio1-nJHxRJa44jfkrNL_Nsy9Qg
同样地,参与Apache DolphinScheduler 有非常多的参与贡献的方式,主要分为代码方式和非代码方式两种。
非代码方式包括:
完善文档、翻译文档;翻译技术性、实践性文章;投稿实践性、原理性文章;成为布道师;社区管理、答疑;会议分享;测试反馈;用户反馈等。
代码方式包括:
查找Bug;编写修复代码;开发新功能;提交代码贡献;参与代码审查等。
贡献第一个PR(文档、代码) 我们也希望是简单的,第一个PR用于熟悉提交的流程和社区协作以及感受社区的友好度。社区汇总了以下适合新手的问题列表:https://github.com/apache/dolphinscheduler/pulls?q=is%3Apr+is%3Aopen+label%3A%22first+time+contributor%22优先级问题列表:https://github.com/apache/dolphinscheduler/pulls?q=is%3Apr+is%3Aopen+label%3Apriority%3Ahigh如何参与贡献链接:https://dolphinscheduler.apache.org/zh-cn/docs/3.2.2/%E8%B4%A1%E7%8C%AE%E6%8C%87%E5%8D%97_menu/%E5%A6%82%E4%BD%95%E5%8F%82%E4%B8%8E_menuhttps://github.com/apache/dolphinscheduler