DM 2.0 RC Release Notes

发版日期:2020 年 8 月 21 日

DM 版本:2.0.0-rc

改进提升

  • 增加对数据迁移任务的高可用支持
  • 增加 sharding DDL 乐观协调模式
  • 增加 handle-error 命令用于处理增量过程中 DDL 复制相关的错误
  • query-status 返回的错误增加了 workaround 字段用于描述错误处理方法
  • 增加与完善监控面板及告警规则
  • 使用 Dumpling 替换 Mydumper 作为全量导出模块
  • 增加向下游执行增量复制时的 GTID 模式支持
  • 增加对上下游数据库及 DM 各组件间 TLS 连接的支持
  • 增加下游表结构比上游存在更多列的增量复制场景支持
  • start-task 增加 --remove-meta 参数用于清理数据迁移任务相关的元信息
  • 支持 DROP 存在单列索引的列
  • 增加在全量导入成功后自动清理临时文件的支持
  • 增加启动任务前检查待迁移表是否存在主键或唯一键的支持
  • 增加对 dmctl 在启动时与 DM-master 的连通性检查
  • 增加在 start-task/check-task 时对下游 TiDB 的连通性检查
  • 增加对 pause-task 等部分命令以任务配置文件取代任务名的支持
  • 为 DM-master、DM-worker 组件增加了 json 格式 log 的支持
  • 优化移除了 query-status 返回错误信息中的程序调用栈信息与冗余字段
  • 优化了 query-status 返回的上游数据库 binlog position 信息
  • 优化了对全量导出过程中遇到错误时的 auto resume 处理

问题修复

  • 修复了执行 stop-task 后部分 goroutine 泄露的问题
  • 修复了执行 pause-task 后任务可能仍未暂停的问题
  • 修复了增量复制初始阶段可能未正确保存 checkpoint 的问题
  • 修复了增量复制时未能正确处理 BIT 类型的问题

详细变更及问题修复

  • 增加对数据迁移任务的高可用支持 #473
  • 增加 sharding DDL 乐观协调模式 #568
  • 增加 handle-error 命令用于处理增量过程中 DDL 迁移相关的错误 #850
  • query-status 返回的错误增加了 workaround 字段用于描述错误处理方法 #753
  • 增加与完善监控面板及告警规则 #853
  • 使用 Dumpling 替换 Mydumper 作为全量导出模块 #540
  • 增加向下游执行增量复制时的 GTID 模式支持 #521
  • 增加对上下游数据库及 DM 各组件间 TLS 连接的支持 #569
  • 增加下游表结构比上游存在更多列的增量复制场景支持 #379
  • start-task 增加 --remove-meta 参数用于清理数据迁移任务相关的元信息 #651
  • 支持 DROP 存在单列索引的列 #801
  • 增加在全量导入成功后自动清理临时文件的支持 #770
  • 增加启动任务前检查待迁移表是否存在主键或唯一键的支持 #870
  • 增加对 dmctl 在启动时与 DM-master 的连通性检查 #786
  • 增加在 start-task/check-task 时对下游 TiDB 的连通性检查 #769
  • 增加对 pause-task 等部分命令以任务配置文件取代任务名的支持 #854
  • 为 DM-master、DM-worker 组件增加了 json 格式 log 的支持 #808
  • 优化移除了 query-status 返回错误信息中的程序调用栈信息 #746
  • 优化移除了 query-status 返回错误信息中的冗余字段 #771
  • 优化了 query-status 返回的上游数据库 binlog position 信息 #830
  • 优化了对全量导出过程中遇到错误时的 auto resume 处理 #872
  • 修复了执行 stop-task 后部分 goroutine 泄露的问题 #731
  • 修复了执行 pause-task 后任务可能仍未暂停的问题 #644
  • 修复了增量复制初始阶段可能未正确保存 checkpoint 的问题 #758
  • 修复了增量复制时未能正确处理 BIT 类型的问题 #876