近期,Apache DolphinScheduler 社区激动地宣布 3.2.1 版本的发布。此次更新不仅着力解决了前一版本(3.2.0)中遗留的问题,而且引入了一系列的功能增强和优化措施。

原先的问题主要源于部分重要代码在发布过程中未能成功合并(cherry-pick),加之这部分代码的合并过程较为复杂,因此,3.2.1 版本基于 2024年2月的 dev 分支代码,剔除了一些不兼容的特性后发布。

全部 Changeloghttps://github.com/apache/dolphinscheduler/releases/tag/3.2.1

下载地址https://dolphinscheduler.apache.org/zh-cn/download/3.2.1

主要修复和功能增强

新特性和优化

  • SQL 任务现支持使用 druid 进行 SQL 分割,支持设置 maxRows
  • 支持自定义 HTTP body 渲染。
  • Kubernetes (k8s) 现支持自定义标签 (label)。
  • 新增支持阿里云语音告警源。
  • Helm chart 现支持 JDBC 注册中心;支持任务类型过滤。

关键问题修复

  • 修复从 3.1.x 升级到 3.2.x 的失败问题。
  • 解决任务组件在使用资源中心时只能使用绝对全路径的限制。
  • 修复启动参数优先级设置错误。
  • 解决数据质量任务无法执行的问题。
  • 修复任务组队列失效问题。
  • 解决任务定义列表修改时任务消失的问题。
  • 修复特殊情况下删除工作流实例导致的空指针异常(NPE)。
  • 解决 Master 和 Worker 之间的通信问题。
  • 修复 Kyuubi 数据源在 UI 中不显示的问题。

安全性改进

此版本也对几个关键的 CVE 问题进行了修复,包括:

  • CVE-2023-49250
  • CVE-2023-51770
  • CVE-2023-50270
  • CVE-2023-49068
  • CVE-2023-49109

BugFix

  • fix: Resource relate path invalid when tenant change (#15581)
  • [fix][worker]:Fix the issue of missing disk usage reporting information  in the worker (#15565)
  • [Fix] Fix WorkflowInstance batch start failed will throw incorrect exception. (#15577)
  • Fix create parent directory will cause FileAlreadyExistsException (#15576)
  • Fix Recover WorkflowInstance will casue workflow Instance state is success but task insatnce is killed/paused (#15574)
  • fix: data quality may fail in docker mode (#15563)
  • fix: start param for wf not work (#15544)
  • fix: ddl without drop exists (#14128)
  • fix switch js (#15487)
  • fix: data quality can not use (#15551)
  • Fix createFile with permission will not work (#15556)
  • [Bug][force-success] force success add end time (#15144)
  • [Bug][Task Api] fix 'MACPATTERN' in ProcessUtils and cover all cases on MacOS in ProcessUtilsTest (#15480)
  • Fix TaskGroupQueue will never be wakeup due to wakeup failed at one time (#15528)

    Exit JVM when OOM (#15538)
  • Fix exception occur in RpcServer side, it will not be sent to RpcClient (#15536)
  • front: When you edit a task in the task definition list, the front task list is displayed (#12819)
  • [Fix] [Bug] Change default version of Workflow/TaskDefinition to 1 (#15498)
  • [Bug] Fix a bug,  When the worker service offline, workerNodeInfo cache in master cannot delete the offline worker (#15459)
  • fix workflow will have same updatetime when import (#14810)
  • [BUG] #15013 Fix retryInterval in RetryPolicy will never be used in RetryUtils (#15014)
  • Throw IllegalArgumentException if parse time placeholder error (#15514)
  • Fix PostgresqlDatabaseContainerProvider get Image is incorrect (#15434)
  • [Bug][Api] Fix NPE when deleting a workflow instance (#15485)
  • Directly Throw exception when taskInstancy log path is empty which log need to be queried (#15511)
  • Fix notify failover WorkflowInstance will cause NPE (#15499)
  • [HotFix] Fix createTaskInstanceWorkingDirectory failed if the old path exist (#15377)
  • [bug] Exception when using host in ipv6 format (#14040)
  • [Bug][Master]serial_wait strategy workflow unable to wake up (#15270)
  • [BUG][Task] fix java task classpath (#15470)
  • [Bug] [Audit log] Fix Audit log UI query error (#15427)
  • [Bug][Registry] Optimizing waiting strategy (#15223)
  • Set TaskGroupQueue updateTime when force start (#15510)
  • TaskGroupPriority only compare When TaskGroup is same (#15486)
  • Remove taskQueue and looper in worker (#15292)
  • Display the resource file doesn't exist message in task create page (#15350)
  • Recreate new TaskInstance Working Directory when exist in worker (#15358)
  • [Bug] Close SSH session after remote shell finish (#15348)
  • Fix check value rather than key in AbstractDataSourceProcessor#checkOther (#15351)
  • Fix resource file usage(Delete Resource/ResourceUser which is deprecated)
  • [Bug][Master] send ACK event timeout (#15346)
  • Fix k8sTaskExecutionContext setting configYaml (#15116)
  • [Fix #15129] [Dependent] The date rules of the dependent node are ambiguous. (#15289)
  • Fix failover Master might not release taskGroup (#15287)
  • [HotFix] Fix TaskOutputParameterParser might OOM if meed a bad output param expression (#15264)
  • [Bug-15215][Api] non-admin should not modify tenantId and queue (#15254)
  • Set the tenant as the owner in final stage (#15256)
  • Use chown to set the file owner (#15240)
  • [Fix] Change HTTP plugin timeout param to number type (#15234)
  • fix switch condition (#15228)
  • Fix docs style is incorrect by CI pass (#15167)
  • Expire session when update user password (#15219)
  • Fix home page workflow instance miss status (#15193)
  • fix security issue (#15192)
  • fix can't stop bug (#15191)
  • Remove API Result in Service (#15181)
  • Exclude DataSourceAutoConfiguration in worker server (#15169)
  • [Bug] Fix TriggerRelationMapper cannot work due to miss DatabaseIdProvider (#15153)
  • Fix spotless (#15164)
  • Fix incorrect button display text (#15160)
  • [Fix][Data Quality] Change t_ds_dq_rule_input_entry field name fix PostgreSQL not support value issue (#14992)
  • fix missing 'KYUUBI' in droplist of datasource (#15140)
  • [Bug] Fix endless loop (#15092)
  • fix: execute sql error: datasource plugin 'doris' is not found。 (#15123)
  • Fix confusing constant string for unit convertor (#15126)
  • [fix-#11726] fix error when set connection proerty both in the URL and an argument (#15093)
  • [Fix-15072][Resource Center] Non-admin user can not query resource recursively (#15097)
  • [E2E][Bug] Fix k8s-e2e (#15098)
  • Fix SqlTask cannot split the given sql when browser in windows (#15062)
  • [Fix-15036] [API] Fix task definition edit doesn't work (#14801)
  • remove sub workflow finish notify (#15057)
  • Fix missing Kyuubi type in UI (#15051)
  • [Fix-14885][pom] fix spotless format file path (#14889)
  • Fix When the task instance status is 'STOP' (#14967)
  • Revert "[Bug] [Resource] fix resource delete bug (#15003)
  • [Bug] [Resource] fix resource delete bug (#15003)

    Delete File generated by UT (#15022)

Improvement

  • [Improvement][UT] Improve Worker registry coverage (#15380)
  • refactor comments & function name for confuse (#15546)
  • [Improvement][HTTP] support custom rendering of http body (#15531)
  • [improvement][api] Fix typo for controllers (#15438)
  • [Feature-15475][DinkyTask] DinkyTask supports Dinky-1.0.0 and common sql (#15479)
  • [Improvement][K8S]Optimize MDC for K8S tasks (#15390)
  • Enable set ServerLoadProtection fot Master/Worker (#15439)
  • [Feature] timed scheduler Improvement (#15449)
  • [Improvement][E2E] add e2e javatask case (#15469)
  • [Enhancement][API]Enhance mysql connection properties (#15433)
  • [Improvement][E2E]e2e improve  add workflow httpTask e2e case (#15420)
  • Add config for defaultTenantEnabled (#15391)
  • Use DefaultUncaughtExceptionHandler to log the uncached exception (#15496)
  • adjust the sequence of alarm group and add validate (#15382)
  • Use Druid to split sql (#15367)
  • optimize add select filter (#15378)
  • [Improvement][Helm] using helm-docs to generate docs automatically (#15299)
  • [Improvement][K8S] Custom label of a K8S task can be passed to the pod (#15369)
  • Optimize server startup log (#15362)
  • [Improvement][E2E] support e2e compose v2 fix code style (#15325)
  • [Improvement] Ensure that HttpUtils can only get result from certification URL (#15288)
  • delete debugger (#15316)
  • Set maxRows in SqlTask (#15342)
  • [Feature-15146][dolphinscheduler-task-sqoop] add sqoop source/target type (#15146)
  • [Feature-15248][dolphinscheduler-alert-plugins] add alert plugin aliyun-voice (#15248)
  • [Improvement-15260][dolphinscheduler-datasource-hana] add hana  related dependencies (#15260)
  • fail-fast for dependent check (#15197)
  • [Improvement] Move delay calculation to Master (#15278)
  • Add dolphinscheduler-extract-common module (#15266)
  • Support parse task output params under multiple log (#15244)
  • [Improvement-15009][Parameter] Change project parameter value to text (#15010)
  • Remove spring cache for dao (#15184)
  • [Improvement] Clean up Scheduler logic (#15198)
  • [Improvement][Alert] Add a test send feature when creating an alert instance (#15163)
  • [Improvement][Helm] support task type filter (#15179)
  • [Improvement][Resource Center] Display brief file name in file-details page (#15137)
  • [Improvement][Alert] Add timeout params for HTTP plugin (#15174)
  • [feature#14654] alert-spi support prometheus alertmanager (#15079)
  • [Improvement][K8S] Remove ResourceQuota (#14991)
  • [Improvement] Refactoring K8S task plugin with connections managed in connection center (#14977)
  • [DSIP-19] Support sagemaker connections in the connection center, as well as external connections to the connection center in sagemaker tasks (#14976)
  • [DSIP-19] Support zeppelin connections in the connection center, as well as external connections to the connection center in zeppelin tasks (#14434)
  • [Feature-14832][Listener]Implementation of Listener Mechanism (#14981)
  • Remove mapper usage in tools (#15073)
  • [Feature-14678][Master][UI]Dependent task parameter passing (#14702)
  • Add IT for mysql5/postgresql16 initialize/upgrade (#15063)
  • Add IT for dolphinscheduler-tools module (#15043)
  • Set kubectl version to v1.28.3 (#15053)
  • Add dolphinscheduler-dao-plugin module (#15019)
  • [improvement][Resources] Improve details page return to the previous list page (#14951)
  • [Improvement][Alert] Alert plugin enhance fail message (#15024)
  • [Improvement][Registry][Jdbc] Add jdbc registry config in helm charts (#14431)
  • [Improvement][Master] Calculate the remainTime then we set the delay execution. (#15012)

Document

  • [Doc][Docker] fix typo on start with docker (#15534)
  • [Doc] remove skywalking, update note (#15028)
  • Change download url in backend.yml (#15526)
  • [Doc][K8S] Add DS K8S Operator into k8s deployment character (#15516)
  • Add guideline link into DolphinScheduler mail list (#15447)
  • Remove unused cache-evict.png (#15220)
  • [Doc-15500][Task] Update cli opts of spark and flink (#15501)
  • doc write wrong,should be MinIO it's not MinION (#15395)
  • [Doc]remove temporary markdown comments (#15385)
  • doc: Classify docs to avoid misleading (#15282)
  • Add deploy on Terraform on README (#15189)
  • Modify the documentation that python task will not work properly when '\n' indicates the presence of a variable and needs to use 'repr(value)' (#15145)
  • [Docs] fix typo (#15032)

Chore

  • merge schema 330 into 321 and change docs (#15582)
  • Set the workflow instance ready state to running in failover (#15572)
  • cp: Reduce the size of tarball to continue ASF release (#15004)
  • chore: Docs change for 3.2.1 release (#15539)
  • [DS-15489][style]rename the vo object suffix (#15504)

致谢

感谢所有贡献者的辛勤付出,特别是以下成员(排名不分先后):

致谢名单
AliceXiaoLu Gallardot clovelll
BaiJv John Huang davidzollo
CommandCV JohnZp dbac
Dyqer Orange-Summer destroydestiny
EricGao888 Radeity devosend
SbloodyS SusurHe fuchanghai
aiwenmo arlendp imizao
c3Vu caishunfeng imp2002
izualzhy kevinkelin lenboo
lgcareer liunaijie liyou
lizhenglei ly109974 pegasas
qingwli reele rickchengx
ruanwenjun sdhzwc sleo
tangjiaolong xdu-chenrj xinxingi
xjlgod xujiaqiang zhanqian
zhaohehuhu zhihuasu zhongjiajie
zhuangchong zhutong6688

本文由 白鲸开源 提供发布支持!

Apache DolphinScheduler 3.2.1 版本发布:增强功能与安全性的全面升级的更多相关文章

  1. KubeEdge 1.12版本发布,稳定性、安全性、可扩展性均带来大幅提升

    摘要:2022年9月29日,KubeEdge发布1.12版本.新版本新增多个增强功能,在扩展性.稳定性.安全性上均有大幅提升. 本文分享自华为云社区<KubeEdge 1.12版本发布,稳定性. ...

  2. WorkflowAsCode 来了,Apache DolphinScheduler 2.0.2 惊喜发布

    文章目录 前言 01 新功能 1 WorkflowAsCode 2 企业微信告警方式支持群聊消息推送 02 优化 1 简化元数据初始化流程 2 删除补数日期中的"+1"(天) 03 ...

  3. ThinkSNS+ alpha.2 版本发布,功能抢先看!【社交系统研发日记六】

    今天的研发日记,我们不讲技术,我们来看看,社交系统TS+从今天开始全面内测开始,都发布了什么功能. 其实,alpha.1 早上打的 tag ,晚上因为增加了两个核心功能,所以又打了 alpha.2 t ...

  4. Apache Pulsar 2.6.1 版本正式发布:2.6.0 功能增强版,新增 OAuth2 支持

    在 Apache Pulsar 2.6.0 版本发布后的 2 个月,2020 年 8 月 21 日,Apache Pulsar 2.6.1 版本正式发布! Apache Pulsar 2.6.1 修复 ...

  5. 论语音社交视频直播平台与 Apache DolphinScheduler 的适配度有多高

    在 Apache DolphinScheduler& Apache ShenYu(Incubating) Meetup 上,YY 直播 软件工程师 袁丙泽 为我们分享了<YY直播基于Ap ...

  6. Apache DolphinScheduler 2.0.1 来了,备受期待的一键升级、插件化终于实现

    ✎ 编 者 按:好消息!Apache DolphinScheduler 2.0.1 版本正式发布! 本版本中,DolphinScheduler 经历了一场微内核+插件化的架构改进,70% 的代码被重构 ...

  7. Apache SeaTunnel (Incubating) 2.1.0 发布,内核重构、全面支持 Flink

    2021 年 12 月 9 日,SeaTunnel (原名 Waterdrop) 成功加入 Apache 孵化器,进入孵化器后,SeaTunnel 社区花费了大量时间来梳理整个项目的外部依赖以确保整个 ...

  8. 英语词典Alpha版本发布说明

    Alpha版本发布说明 功能: ·简洁的应用界面,不被无良的广告弹窗影响  ·功能直接,在需要查词时及时出现,没有每日一句精选文章等杀了你的流量,在学习过程中更加专注! ·采用金山词霸API,提供发音 ...

  9. Apache DolphinScheduler 3.0.0 正式版发布!

    ​  点亮 ️ Star · 照亮开源之路 GitHub:https://github.com/apache/dolphinscheduler   ​ 版本发布 2022/8/10 2022 年 8 ...

  10. 重构、插件化、性能提升 20 倍,Apache DolphinScheduler 2.0 alpha 发布亮点太多!

    点击上方 蓝字关注我们 社区的小伙伴们,好消息!经过 100 多位社区贡献者近 10 个月的共同努力,我们很高兴地宣布 Apache DolphinScheduler 2.0 alpha 发布.这是 ...

随机推荐

  1. Puremvc

    Puremvc 框架unitypuremvc PureMVC健壮.易扩展.易维护 Many so-called Model-View-Controller frameworks today seem ...

  2. WPF/C#:显示分组数据的两种方式

    前言 本文介绍自己在遇到WPF对数据进行分组显示的需求时,可以选择的两种方案.一种方案基于ICollectionView,另一种方案基于IGrouping. 基于ICollectionView实现 相 ...

  3. EIGRP总结

    EIGRP     思科私有,2013年公开,其他厂商不支持,所以用得不是很多     几秒钟就能完成收敛     触发更新,只要网络不发生变化就不会发生更新     按需更新,只更新变化的部分    ...

  4. 核对不同文件夹所含内容的差异并提取缺失内容:Python代码

      本文介绍基于Python语言,以一个大文件夹作为标准,对另一个大文件夹所包含的子文件夹或文件加以查漏补缺,并将查漏补缺的结果输出的方法.   首先,来明确一下本文所需实现的具体需求.现有一个大文件 ...

  5. 效率工具RunFlow完全手册之进阶篇

    欢迎来到RunFlow手册的进阶篇,如果您还不了解RunFlow,建议先阅读我们的基础篇. (Solo 社区投稿) 搜索文件 按文件大小过滤,添加 len 参数,比如:len:1kb-2kb,len: ...

  6. Libgdx游戏开发(7)——开始游戏界面实现

    原文: Libgdx游戏开发(7)--开始游戏界面实现-Stars-One的杂货小窝 上篇文章也是讲解了如何实现暂停,但实际上,上篇的做法可能不够优雅 因为暂停和游戏界面我们可以分成2个Screen对 ...

  7. [oeasy]python0015_键盘改造_将esc和capslock对调_hjkl_移动_双手正位

    键盘改造 回忆上次内容 上次练习了复制粘贴 按键 作用 <kbd>y</kbd><kbd>y</kbd> 复制光标行代码 到剪贴板 <kbd> ...

  8. oeasy教您玩转vim - 005 - # 程序本质

    ​ 程序本质 回忆上次内容 py 的程序是按照顺序 一行行挨排解释执行的 我们可以 python3 -m pdb hello.py 来对程序调试 调试的目的是去除 bug 别害怕 bug bug 会有 ...

  9. Doris failed to initialize storage reader. tablet=106408, res=[NOT_IMPLEMENTED_ERROR]to be implemented

    Apache Doris 2.3 以下的版本会存在一个 bug,导致数据在合并时存在异常,在后续查询该字段数据时会提示 [1105] [HY000]: errCode = 2, detailMessa ...

  10. CSS:弹性布局(display:flex)

    道友请了~ 最近小道在修练主修功法<嘉蛙>之余,偶然从一名散修手中得到了一本<CSS秘籍>,刚好近期有自己做微信小程序的打算,这不是瞌睡了给递枕头么.欣喜若狂,翻开第一章,拜读 ...