TiDB 2.1.17 发布,分布式 NewSQL 数据库
TiDB 2.1.17 已经发布,更新内容如下:
-
新特性
- TiDB 的
SHOW TABLE REGIONS
语法新增WHERE
条件子句 - TiKV、PD 新增
config-check
功能,用于配置项检查 - pd-ctl 新增
remove-tomestone
命令,支持清理 tombstone store 记录 - Reparo 新增
worker-count
和txn-batch
配置项,用于控制恢复速率
- TiDB 的
-
改进提升
- PD 优化调度流程,支持主动下发调度
- TiKV 优化启动流程,减少重启节点带来的抖动
-
行为变更
- TiDB 慢日志中的
start ts
由最后一次重试的时间改为第一次执行的时间 - TiDB 慢日志中的
Index_ids
字段替换为Index_names
字段,提升慢日志易用性 - TiDB 配置文件中添加
split-region-max-num
参数,用于调整SPLIT TABLE
语法允许的最大 Region 数量,默认配置下,允许的数量由 1,000 增加至 10,000
- TiDB 慢日志中的
TiDB
- SQL 优化器
- SQL 执行引擎
- 修复
CAST
函数在进行数值类型转换时,首先将数值转换为UINT
导致一些结果不正确的问题(例如,select cast(13835058000000000000 as double)
)#11712 - 修复
DIV
运算的被除数为DECIMAL
类型且运算含有负数时,运算结果可能不正确的问题 #11812 - 添加
ConvertStrToIntStrict
函数,修复执行SELECT
/EXPLAIN
语句时,一些字符串转换INT
类型结果与 MySQL 不兼容的问题 #11892 - 修复使用
EXPLAIN ... FOR CONNECTION
语法时,stmtCtx
没有正确设置导致Explain
结果可能不正确的问题 #11978 - 修复
unaryMinus
函数,当 Int 结果溢出时,返回结果类型没有为 Decimal 导致与 MySQL 不兼容的问题 #11990 - 修复
LOAD DATA
语句执行时,计数顺序导致的last_insert_id()
可能不正确的问题 #11994 - 修复用户显式、隐式混合写入自增列数据时,
last_insert_id()
可能不正确的问题 #12001 - 修复一个
JSON_UNQUOTE
函数兼容性问题:只有在双引号("
)内的值需要 Unquote,例如SELECT JSON_UNQUOTE("\\\\")
应当为 “\\
“(不进行 Unquote)#12096
- 修复
- Server
- TiDB 事务重试时,记录在慢日志中的
start ts
由最后一次重试的时间改为第一次执行的时间 #11878 - 在
LockResolver
中添加事务的 Key 数量:当 Key 数量较少时,可以避免对整个 Region 的 Scan 操作,减小清锁的代价 #11889 - 修复慢日志中,
succ
字段值可能不正确的问题 #11886 - 将慢日志中的
Index_ids
字段替换为Index_names
字段,提升慢日志易用性 #12063 - 修复
Duration
内容中包含-
时(例如select time(‘--’)
),TiDB 解析为 EOF Error 导致连接断开的错误 #11910 - 改进
RegionCache
:当一个 Region 失效时,它将会更快地从RegionCache
中移除,减少向该 Region 发送请求的个数 #11931 - 修复
oom-action = "cancel"
时,当Insert Into … Select
语句发生 OOM,OOM Panic 没有被正确处理而导致连接断开的问题 #12126
- TiDB 事务重试时,记录在慢日志中的
- DDL
- 为
tikvSnapshot
添加逆序扫描接口用于高效地查询 DDL History Job,使用该接口后ADMIN SHOW DDL JOBS
的执行时间有明显降低 #11789 - 改进
CREATE TABLE ... PRE_SPLIT_REGION
的语义:当指定PRE_SPLIT_REGION = N
时,将预切分的 Region 个数由 2^(N-1) 改为 2^N #11797 - 根据线上负载与 Add Index 相互影响测试,调小 Add Index 后台工作线程的默认参数以避免对线上负载造成较大影响 #11875
- 改进
SPLIT TABLE
语法的行为:当使用SPLIT TABLE ... REGIONS N
对 Region 切分时,会生成 N 个数据 Region 和 1 个索引 Region #11929 - 在配置文件中添加
split-region-max-num
参数,使得SPLIT TABLE
语法允许的最大 Region 数量可调整,该参数默认值10000
#12080 - 修复写 binlog 时,
CREATE TABLE
语句中PRE_SPLIT_REGIONS
部分没有被注释,导致语句不能被下游 MySQL 解析的问题 #12121 SHOW TABLE … REGIONS
和SHOW TABLE .. INDEX … REGIONS
语法新增WHERE
条件子句 #12124
- 为
- Monitor
- 增加监控指标
connection_transient_failure_count
,用于统计tikvclient
的 gRPC 连接错误数量 #12092
- 增加监控指标
TiKV
- 解决某些情况下 Region 内 key 个数统计不准的问题 #5415
- TiKV 新增
config-check
选项,用于检查 TiKV 配置项是否合法 #5391 - 优化启动流程,减少重启节点带来的抖动 #5277
- 优化某些情况下解锁的流程,加速事务解锁 #5339
- 优化
get_txn_commit_info
的流程,加速事务提交 #5062 - 简化 Raft 相关的 log #5425
- 解决在某些情况下 TiKV 异常退出的问题 #5441
PD
- PD 新增
config-check
选项,用于检查 PD 配置项是否合法 #1725 - pd-ctl 新增
remove-tomestone
命令,支持清理 tombstone store 记录 #1705 - 支持主动下发 Operator,加快调度速度 #1686
Tools
-
TiDB Binlog
-
TiDB Lightning
- 修复从 checkpoint 点重新导入可能会导致 tidb-lightning 崩溃的 bug #239
TiDB Ansible
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
PostgreSQL JDBC 42.2.7 发布
PostgreSQL JDBC 42.2.7 发布了,更新内容如下: 新增 将参数状态消息(GUC_REPORT)公开给用户PR 1435 为 jdk9+ 的清单添加自动模块名称PR 1538 当没有正在进行的事务时,记录忽略回滚PR 1549 将 inet 类型映射到 InetAddressPR 1527issue 1134 修复 issue 1547只要 peek 返回一些字节不重置超时,这允许我们继续检查,直到消耗任何异步通知PR 1548 issue 1466在逻辑解码中,如果后端请求回复:PR 1467 issue 1534支持 Proleptic java.timePR 1539 确保 isValid() 的持续时间不会超过超时秒数PR 1557 详情可查看发布公告:https://www.postgresql.org/about/news/1971/
- 下一篇
feilong-core 2.0.0 发布,让 Java 开发更简便的工具包
各位, 中秋节快乐 feilong-core 2.0.0 发布啦,让 Java 开发更简便的工具包 本次升级共有3处变更,具体参见2.0.0milestone 2.0.0文档地址:http://feilong-core.mydoc.io/ 单元测试数增加至2192个,单元测试覆盖率增加至91%,javadoc比率83% [Feature]? #801新建ThreadUtil.execute(List<T>,int,PartitionPerHandler<T>) 给定一个待解析的list,设定每个线程执行多少条eachSize,使用自定义的partitionRunnableBuilder,自动构造多条线程并运行. 主要是用来简化execute(List,int,PartitionRunnableBuilder)调用 重构: 对于以下代码: ThreadUtil.execute(list,5,newPartitionRunnableBuilder<String>(){ @Override publicRunnablebuil...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7,8上快速安装Gitea,搭建Git服务器
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS关闭SELinux安全模块
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Hadoop3单机部署,实现最简伪集群
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- CentOS7安装Docker,走上虚拟化容器引擎之路