该版本更新内容如下:
Improvements
Index Join
通过考虑驱动表和从动表的行数来提高计算成本的准确性#12085- 当索引中可以完全覆盖查询中涉及的列时,提高性能#12022
- 通过支持索引合并功能#10121 #10512 #11245 #122248 #12248 #12305 #12305 #12305 #12248 #12248 #12305 #12305 #12248 #12305 #12305 #12248 #12248 #12248 #12305
- 通过缓存索引结果并消除重复的结果,提高范围计算的性能并减少 CPU 开销#12856
- 将慢速日志的级别与普通日志的级别分离#12359
- 将
query-log-max-len
参数的默认值增加至4096
以减少被截断的 SQL 输出的数量。该参数可以动态调整。#12491 - ……
New Features
- 支持在
ADMIN SHOW DDL JOBS
中使用LIKE
orWHERE
子句进行条件过滤#12484 - 在
information_schema.tables
表中添加TIDB_ROW_ID_SHARDING_INFO
列以输出RowID
散射信息(例如,表A
中的SHARD_ROW_ID_BITS
值为"SHARD_BITS={bit_number}"
)#13418 - 添加
oom-use-tmp-storage
参数(默认情况下为true
),以控制当执行单个 SQL 语句的内存使用量超过mem-quota-query
并且 SQL 包含Hash Join
时,是否使用临时文件来缓存中间结果#11832 #11937 #12116 #12067 - 支持通过HTTP
info/all
接口查询集群中 TiDB 服务器启用的 binlog 状态 #13025 - 支持在column属性中添加
AutoRandom
关键字,以控制系统是否自动向主键分配随机整数,从而避免了由AUTO_INCREMENT
主键引起的热点问题#13127 - 支持 Table Locks #11038
- ……
Changed Behaviors
- 优化SQL错误消息的错误代码以消除该
ERROR 1105 (HY000)
代码(Unknown Error
类型) - 当执行
INSERT
/REPLACE
/DELETE
/UPDATE
期间使用的内存超过MemQuotaQuery
配置项指定的限制时,打印日志或取消 SQL 执行。实际行为取决于OOMAction
配置#14179 #14289 #14299
Bugfix
- 修复与 RBAC 有关的几个问题#13820 #13940 #14090 #13940 #13014
- 修复由于
SELECT
语句包含union
而无法创建 VIEW 的问题#12595 - 修复与
CAST
功能有关的几个问题
下载地址:
https://github.com/pingcap/tidb/releases/tag/v4.0.0-beta