3.21.06.0 版本
DBLE Release Notes
一、DBLE 项目介绍
破壳日:2017.10.24
爱好:开源
技能:数据水平拆分、读写分离、分布式事务支持、多分片算法、全局 ID、IP/SQL 黑白名单
特长:MySQL 语法兼容、复杂查询优化、低改造成本、成熟稳定、成熟技术栈
-
DBLE 官方项目:
https://github.com/actiontech/dble -
DBLE 官方文档(已更新):
https://actiontech.github.io/dble-docs-cn
-
新版本 DBLE 下载地址及 Release Notes: https://github.com/actiontech/dble/releases
-
点击学习《DBLE 快速上手》,实操视频 + 图文稿! -
点击学习《DBLE 公开课》进阶课程
二、新版本主要功能更新解读
新版 DBLE 新增&重构功能 8 个,修复缺陷 10+ 个,和旧版本的不兼容项调整 2 处。
致谢:
感谢以下人士对社区的贡献:@prostranger, @LavieZhou, @lenovore, @boying52 感谢 Github 用户提供的优质 issue,star 突破 830! 感谢 QQ 群(669663113)和微信群内朋友提供的有效反馈,群用户突破千人!
主要更新:
1、提供了一个开关,决定是否将 in-Subquery 转换为 join
在此版本之前,我们会默认将in子查询尝试转为 join 来生成执行计划,现在我们增加一个全局配置项,由用户来决定是否应该转化。
2、查询计划的进一步优化
如果一条复杂查询的子查询和外部使用了同一张表,并且路由的结果也一致,那么这条 sql 应该被直接下发,而不是重写后下发算子
由于各种原因,mysql 节点层面可能留存 dble 生成的 Xid ;
这种情况下启动 dble,可能会出现’The XID alread exists’报错;
三、完整 Release Notes
[#2636] 支持动态更改线程池大小。更多详细信息,请参见 doc。
[#2646] 支持 Mariadb 的驱动设置 useBatchMultiSend。更多详细信息,请参阅 mariadb 文档。
[#2751] 观察 SQL 统计队列的利用率。更多详情见 doc。
[#2713] 支持 XA 事务的残留检查。更多详细信息,请参见 doc。
[#2408] 分片路由无法在“left join”和“union”处正确路由到正确的分片数据库,感谢@prostranger 报告改进。
[#2130][#2676] 提供了一个开关,决定是否将 inSubquery 转换为 join,感谢@LavieZhou 报告改进。
[#2641] 将druid升级到 1.2.6 版。
[#2648] 重构集群数据。如果升级需要重新创建[备份-删除-创建]数据。
主要缺陷修复:
[#2622] set autocommit 没有按预期工作。
[#2638] 开着慢日志,dble 可能会出现 oom。
[#2819] 使用读写分离时的事务失败问题,感谢 @boying52 报告错误。
[#2728] 检查表一致性问题,感谢 @lenovore 报告错误。
有时复杂的查询可能会导致线程泄漏。
当 group by 包含
=
时,结果可能会出错。jumpStringHash 的默认设置已更改,升级需要重新设置。
一些 NullPointException。
和旧版本的不兼容项:
[#2676] 提供一个开关,用于确定是否将 inSubquery 转换为 join。默认行为曾经为 true,现在为 false。
[#2648] 重构集群数据。如果升级需要重新创建[备份-删除-创建]数据。
删除诸如 file @@… 、show @@syslog 之类的命令。
jumpStringHash 的默认设置已更改,如果升级需要重置。
四、LTS 版本更新
对于 LTS 的版本,有小版本发出,修复一些 bug:
3.20.07.5
多语句在 lastInsertId 过大的时候包乱序
复杂查询可能导致的线程泄漏
开着慢日志,dble 可能会出现 oom
3.20.10.5
复杂查询可能导致的线程泄漏
开着慢日志,dble 可能会出现 oom
检查表一致性问题
读写分离中 com_stmt_prepare 返回报文次序错误
set autocommit 未按照预期执行
偶现的 ArrayIndexOutOfBoundException
3.21.02.2
复杂查询可能导致的线程泄漏
开着慢日志,dble 可能会出现 oom
检查表一致性问题
读写分离中 com_stmt_prepare 返回报文次序错误
set autocommit 未按照预期执行
偶现的 ArrayIndexOutOfBoundException
sql 统计相关修复
使用读写分离时的事务失败问题
本次的发版报道就到这里啦~