TiDB 4.0.12 Release Notes
发版日期:2021 年 4 月 2 日
TiDB 版本:4.0.12
新功能
-
TiFlash
-
新增工具用于检测当前
tiflash replica的状态
改进提升
-
TiDB
-
优化
EXPLAIN语句在batch cop模式下的输出信息 #23164 - 在
EXPLAIN语句的输出中,为无法下推到存储层的表达式增加告警信息 #23020 - 调整 DDL 包中部分
Execute/ExecRestricted的使用为安全 API (2) #22935 - 调整 DDL 包中部分
Execute/ExecRestricted的使用为安全 API (1) #22929 - 添加
optimization-time和wait-TS-time到慢日志中 #22918 - 支持从
infoschema.partitions表中查询partition_id#22489 - 添加
last_plan_from_binding以帮助用户了解 SQL 执行计划是否与 binding 的 hint 相匹配 #21430 - 支持在没有
pre-split选项时也能执行TRUNCATE表操作 #22872 - 为
str_to_date表达式添加三种新的格式限定符 #22812 - 在 metrics 监控中记录
PREPARE执行失败的问题为Failed Query OPM#22672 - 当设置了
tidb_snapshot时,不对PREPARE语句的执行报错 #22641 -
TiKV
-
消除短时间内大量重连接的现象 #9879
- 对多 Tombstones 场景下的写操作和 Batch Get 进行优化 #9729
- 将
leader-transfer-max-log-lag的默认值改为128,以增加切换 leader 的成功率 #9605 -
PD
-
只有当
pending-peer或down-peer变更时才更新 Region Cache,减少心跳更新压力 #3471 - 防止
split-cache中的 Region 成为合并的目标 #3459 -
TiFlash
-
优化配置文件并删除无用项
- 减小 TiFlash 二进制文件大小
- 使用自适应的 GC 策略以减少内存使用
-
Tools
-
TiCDC
- 若任务的暂停同步时间超过 1 天,再次启动该任务时需要二次确认 #1497
- 为 Old Value 功能添加监控面板 #1571
-
Backup & Restore (BR)
-
记录
HTTP_PROXY和HTTPS_PROXY环境变量 #827 - 提升多表场景下的备份性能 #745
- 在 service safe point 检查失败时报告错误 #826
- 在
backupmeta中记录集群版本和 BR 版本 #803 - 遇到外部存储错误时,重试备份以便提高备份成功率 #851
- 减少 BR 备份的内存使用 #886
-
TiDB Lightning
-
运行 TiDB Lightning 前检查 TiDB 集群版本以防止未知错误 #787
- 在遇到 cancel 错误时及时退出 #867
- 添加
tikv-importer.engine-mem-cache-size和tikv-importer.local-writer-mem-cache-size参数以便调整内存占用和性能之间的平衡 #866 - Local-backend 并发运行
batch split region以提高导入速度 #868 - 从 S3 存储导入数据时,TiDB Lightning 不再要求
s3:ListBucket权限 #919 - 从 checkpoint 恢复时,TiDB Lightning 会继续使用之前的导入引擎 #924
Bug 修复
-
TiDB
-
修复当变量为十六进制字面量时,
get表达式出错的问题 #23372 - 修复生成
Enum和Set类型的快速执行计划时使用了错误 Collation 的问题 #23292 - 修复
nullif和is-null表达式一起使用时可能出现结果错误的问题 #23279 - 修复自动搜集统计信息在规定时间窗口外被触发的问题 #23219
- 修复
point-get计划中CAST函数可能忽略错误的问题 #23211 - 修复
CurrentDB为空时 SPM 可能不生效的问题 #23209 - 修复 IndexMerge 执行计划中可能出现错误过滤条件的问题 #23165
- 修复
NULL常量的返回类型中可能出现NotNullFlag的问题 #23135 - 修复 Text 类型可能遗漏处理 Collation 的问题 #23092
- 修复 Range 分区表处理
IN表达式可能出错的问题 #23074 - 修复将 TiKV 标记为 Tombstone 后,在相同地址和端口启动不同 StoreID 的新 TiKV 会持续返回
StoreNotMatch的问题 #23071 - INT 类型为
NULL且和YEAR进行比较时不进行类型调整 #22844 - 修复当表含有
auto_random列 load data 时失去连接的问题 #22736 - 修复取消 DDL 操作 panic 时可能阻塞其他 DDL 操作的问题 #23297
- 修复进行
NULL和YEAR比较时可能生成错误 key range 的问题 #23104 - 修复创建视图成功但是使用时可能失败的问题 #23083
-
TiKV
-
修复
IN表达式没有正确处理有符号和无符号整型数的问题 #9850 - 修复 Ingest 操作不可重入问题 #9779
- 修复 TiKV 在处理 JSON 向字符串转换时空格缺失的问题 #9666
-
PD
-
修复在 store 缺失 label 的情况下隔离级别错误的问题 #3474
-
TiFlash
-
修复当
binary列的默认值前后包含0字节时查询结果错误的问题 - 修复当数据库名称中包含特殊字符时无法同步数据的问题
- 修复
IN表达式中出现Decimal列时查询结果错误的问题 - 修复 Grafana 中已打开文件数指标过高的问题
- 修复当表达式中包含
Timestamp类型时查询结果错误的问题 - 修复处理
FROM_UNIXTIME表达式时可能发生的无响应的问题 - 修复字符串转换为整数结果不正确的问题
- 修复
like表达式可能返回错误结果的问题 -
Tools
-
TiCDC
- 修复
resolved ts时间乱序的问题 #1464 - 修复由于网络不稳定而导致的表调度出错引发的数据丢失问题 #1508
- 修复终止 processor 时不能及时释放资源的问题 #1547
- 修复因事务计数器未正确更新而导致下游数据库链接可能泄露的问题 #1524
- 修复因 PD 抖动时多个 owner 共存可能导致数据表丢失的问题 #1540
-
Backup & Restore (BR)
-
修复
WalkDir在目标为 bucket name 的时候无返回值的问题 #733 - 修复
status端口无 TLS 的问题 #839 -
TiDB Lightning
-
修复 TiKV Importer 可能忽略文件已存在的错误 #848
- 修复 TiDB Lightning 可能使用错误的时间戳而读到错误数据的问题 #850
- 修复 TiDB Lightning 非预期退出时可能造成 checkpoint 文件损坏的问题 #889
- 修复由于忽略
cancel错误而可能导致的数据错误的问题 #874
- 修复
