EasyScheduler项目升级不兼容变更指南
dolphinscheduler 项目地址: https://gitcode.com/gh_mirrors/ea/EasyScheduler
前言
EasyScheduler作为一款优秀的分布式工作流任务调度系统,在版本迭代过程中会不断优化功能并修复问题。但某些更新可能会带来不兼容的变更,这需要用户在升级前特别注意。本文将详细梳理各版本间的不兼容变更内容,帮助用户顺利完成系统升级。
开发版(dev)不兼容变更
1. 数据库驱动升级
MySQL驱动版本从8.0.16升级至8.0.33,这一变更可能会影响:
- 数据库连接配置
- 特定SQL语句的执行行为
- 与MySQL服务器的兼容性
建议在升级前测试新驱动与现有MySQL版本的兼容性。
2. 环境变量重命名
PYTHON_HOME
→PYTHON_LAUNCHER
DATAX_HOME
→DATAX_LAUNCHER
这一变更会影响:
- 现有环境配置脚本
- 任务执行环境
- 相关文档中的引用
3. SQL任务变量匹配规则更新
SQL任务中用于匹配变量的正则表达式被更新,这会影响:
- 现有SQL脚本中的变量引用方式
- 变量替换逻辑
- 复杂SQL语句的解析
4. Spark任务变更
移除了Spark任务中的版本配置选项,这意味着:
- 不再支持为单个任务指定Spark版本
- 需要统一使用系统配置的Spark版本
5. Shell执行器变更
默认Unix shell执行器从sh改为bash,影响:
- 现有shell脚本的执行环境
- 脚本中特定于bash的特性使用
6. 存储操作变更
移除了StorageOperate
中download()
方法的deleteSource
参数,这会影响:
- 文件下载后的源文件处理逻辑
- 自定义存储操作实现
3.2.0版本不兼容变更
资源中心接口变更
移除了资源中心相关接口中的description
请求参数,影响:
- 调用这些接口的客户端代码
- 资源描述信息的处理方式
数据源接口变更
在以下接口中添加了必选字段database
:
/datasources/tables
/datasources/tableColumns
这一变更会影响:
- 现有调用这些接口的代码
- 表结构查询功能
3.0.0版本不兼容变更
工作流复制变更
工作流复制和导入时不再自动添加'copy'后缀,影响:
- 工作流命名规则
- 重复工作流的处理方式
SQL分隔符变更
默认SQL段分隔符改为分号(;),影响:
- 多语句SQL的执行方式
- SQL脚本的解析
3.3.0版本重大变更
功能移除
- 移除了资源中心中的UDF管理功能
- 移除了任务插件中的Pigeon类型
- 移除了数据质量模块
- 移除了任务插件中的Dynamic类型
这些变更会影响:
- 相关功能的现有使用方式
- 系统功能架构
术语统一
将代码中的process
统一为workflow
,影响:
- API接口
- 数据库表名
- 代码引用
废弃代码清理
- 移除了1.x至2.x的升级代码
- 移除了
t_ds_worker_group
表中的other_params_json
字段
配置变更
- 移除了
application.yaml
中的registry-disconnect-strategy
配置 - 移除了worker配置中的
exec-threads
,改用physical-task-config
- 移除了master配置中的
master-async-task-executor-thread-pool-size
,改用logic-task-config
升级建议
- 全面测试:在测试环境验证所有变更点
- 配置检查:仔细核对所有配置变更
- 脚本更新:更新相关脚本和环境变量
- 功能替代:为移除的功能寻找替代方案
- 文档同步:更新内部文档以反映这些变更
通过提前了解这些不兼容变更,用户可以更顺利地完成EasyScheduler的版本升级,确保系统稳定运行。
dolphinscheduler 项目地址: https://gitcode.com/gh_mirrors/ea/EasyScheduler
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考