|
| 1 | +--- |
| 2 | +title: TiDB 4.0 RC Release Notes |
| 3 | +category: Releases |
| 4 | +--- |
| 5 | + |
| 6 | +# TiDB 4.0 RC Release Notes |
| 7 | + |
| 8 | +发版日期:2020 年 04 月 08 日 |
| 9 | + |
| 10 | +TiDB 版本:4.0.0-rc |
| 11 | + |
| 12 | +TiUP 版本:0.0.3 |
| 13 | + |
| 14 | +## 兼容性变化 |
| 15 | + |
| 16 | ++ TiDB |
| 17 | + |
| 18 | + - 当 tidb-server 状态端口被占用时由原来打印一条告警日志改成拒绝启动 [#15177](https://github.com/pingcap/tidb/pull/15177) |
| 19 | + |
| 20 | ++ TiKV |
| 21 | + |
| 22 | + - 悲观事务支持 pipelined 功能,TPC-C 性能提升 20%, 风险:pipelined 功能可能会在执行阶段加锁不成功导致事务提交失败 [#6984](https://github.com/tikv/tikv/pull/6984) |
| 23 | + - 调整 unify-read-pool 配置项的方式,仅在新部署的集群时默认启用,旧集群保持原来的方式 [#7059](https://github.com/tikv/tikv/pull/7059) |
| 24 | + |
| 25 | ++ Tools |
| 26 | + |
| 27 | + - TiDB Binlog |
| 28 | + |
| 29 | + * 新增验证 Common Name 配置项目的功能 [#934](https://github.com/pingcap/tidb-binlog/pull/934) |
| 30 | + |
| 31 | +## 重点修复的 Bug |
| 32 | + |
| 33 | ++ TiDB |
| 34 | + |
| 35 | + - 修复 DDL 采用 `PREPARE` 语句执行时,由于内部记录的 job query 不正确,导致上下游同步可能出错的问题 [#15435](https://github.com/pingcap/tidb/pull/15435) |
| 36 | + - 修复 Read Committed 隔离级别下,子查询的输出结果可能不正确的问题 [#15471](https://github.com/pingcap/tidb/pull/15471) |
| 37 | + - 修复 Inline Projection 优化所导致的结果错误问题 [#15411](https://github.com/pingcap/tidb/pull/15411) |
| 38 | + - 修复某些情况下 SQL Hint `INL_MERGE_JOIN` 未正确执行的问题 [#15515](https://github.com/pingcap/tidb/pull/15515) |
| 39 | + - 修复向 `AutoRandom` 列显式写入负数时,`AutoRandom` 列会 Rebase 的问题 [#15397](https://github.com/pingcap/tidb/pull/15397) |
| 40 | + |
| 41 | +## 新功能 |
| 42 | + |
| 43 | ++ TiDB |
| 44 | + |
| 45 | + - 新增大小写敏感的排序规则,用户可在新集群上启用 `utf8mb4_general_ci` 和 `utf8_general_ci` [#33](https://github.com/pingcap/tidb/projects/33) |
| 46 | + - 增强 `RECOVER TABLE` 语法,现在该语法支持恢复被 Truncate 的表 [#15398](https://github.com/pingcap/tidb/pull/15398) |
| 47 | + - 当 tidb-server 状态端口被占用时由原来打印一条告警日志改成拒绝启动 [#15177](https://github.com/pingcap/tidb/pull/15177) |
| 48 | + - 优化使用 Sequence 作为列的默认值时的写入性能 [#15216](https://github.com/pingcap/tidb/pull/15216) |
| 49 | + - 新增 `DDLJobs` 系统表,用于查询 DDL 任务详细信息 [#14837](https://github.com/pingcap/tidb/pull/14837) |
| 50 | + - 优化 `aggFuncSum` 的性能 [#14887](https://github.com/pingcap/tidb/pull/14887) |
| 51 | + - 优化 `EXPLAIN` 的输出结果 [#15507](https://github.com/pingcap/tidb/pull/15507) |
| 52 | + |
| 53 | ++ TiKV |
| 54 | + |
| 55 | + - 悲观事务支持 pipelined 功能,TPC-C 性能提升 20%,风险:pipelined 功能可能会在执行阶段加锁不成功导致事务提交失败 [#6984](https://github.com/tikv/tikv/pull/6984) |
| 56 | + - HTTP 端口支持 TLS [#5393](https://github.com/tikv/tikv/pull/5393) |
| 57 | + - 调整 unify-read-pool 配置项的方式,仅在新部署的集群时默认启用,旧集群保持原来的方式 [#7059](https://github.com/tikv/tikv/pull/7059) |
| 58 | + |
| 59 | ++ PD |
| 60 | + |
| 61 | + - 新增通过 HTTP 接口获取 PD 默认配置信息功能 [#2258](https://github.com/pingcap/pd/pull/2258) |
| 62 | + |
| 63 | ++ Tools |
| 64 | + |
| 65 | + - TiDB Binlog |
| 66 | + |
| 67 | + * 新增验证 Common Name 配置项目的功能 [#934](https://github.com/pingcap/tidb-binlog/pull/934) |
| 68 | + |
| 69 | + - TiDB Lightning |
| 70 | + |
| 71 | + * 优化 TiDB Lightning 的性能 [#281](https://github.com/pingcap/tidb-lightning/pull/281) [#275](https://github.com/pingcap/tidb-lightning/pull/275) |
| 72 | + |
| 73 | +## Bug 修复 |
| 74 | + |
| 75 | ++ TiDB |
| 76 | + |
| 77 | + - 修复 DDL 采用 `PREPARE` 语句执行时,由于内部记录的 job query 不正确,导致上下游同步可能出错的问题 [#15435](https://github.com/pingcap/tidb/pull/15435) |
| 78 | + - 修复 Read Committed 隔离级别下,子查询的输出结果可能不正确的问题 [#15471](https://github.com/pingcap/tidb/pull/15471) |
| 79 | + - 修复 `INSERT ... VALUES` 指定 `BIT(N)` 类型数据时可能报错的问题 [#15350](https://github.com/pingcap/tidb/pull/15350) |
| 80 | + - 修复 DDL Job 内部重试时,`ErrorCount` 的值没有被正确累加导致未完全达到重试预期的问题 [#15373](https://github.com/pingcap/tidb/pull/15373) |
| 81 | + - 修复 TiDB 连接 TiFlash 时,垃圾回收可能工作不正常的问题 [#15505](https://github.com/pingcap/tidb/pull/15505) |
| 82 | + - 修复 Inline Projection 优化所导致的结果错误问题 [#15411](https://github.com/pingcap/tidb/pull/15411) |
| 83 | + - 修复某些情况下 SQL Hint `INL_MERGE_JOIN` 未正确执行的问题 [#15515](https://github.com/pingcap/tidb/pull/15515) |
| 84 | + - 修复向 AutoRandom 列显式写入负数时,AutoRandom 列会 Rebase 的问题 [#15397](https://github.com/pingcap/tidb/pull/15397) |
| 85 | + |
| 86 | ++ TiKV |
| 87 | + |
| 88 | + - 修复启用 Follower Read 功能,由于 transfer leader 导致系统 Panic 的问题 [#7101](https://github.com/tikv/tikv/pull/7101) |
| 89 | + |
| 90 | ++ Tools |
| 91 | + |
| 92 | + - TiDB Lightning |
| 93 | + |
| 94 | + * 修复 backend 是 TiDB 时由于字符转换错误导致数据错误的问题 [#283](https://github.com/pingcap/tidb-lightning/pull/283) |
| 95 | + |
| 96 | + - TiCDC |
| 97 | + * 修复 MySQL sink 执行 DDL 时,若下游没有 test 库系统报错的问题 [#353](https://github.com/pingcap/ticdc/pull/353) |
| 98 | + * CDC cli 新增实时交互模式功能 [#351](https://github.com/pingcap/ticdc/pull/351) |
| 99 | + * 同步数据时增加对上游表是否可同步的检查 [#368](https://github.com/pingcap/ticdc/pull/368) |
| 100 | + * 新增异步写入 Kafka 的功能 [#344](https://github.com/pingcap/ticdc/pull/344) |
0 commit comments