2.19.05.0 版本

DBLE Release Notes

以下对 DBLE 2.19.05.0 版本的 Release Notes 进行详细解读。

文章主要分为四部分内容:

一、DBLE 项目介绍

二、更新概况

三、新特性

四、升级兼容性

五、DBLE Release Notes

一、DBLE 项目介绍

DBLE 是企业级开源分布式中间件,江湖人送外号 “MyCat Plus”;以其简单稳定,持续维护,良好的社区环境和广大的群众基础得到了社区的大力支持。

DBLE 官方项目:

https://github.com/actiontech/dble

如对源码有兴趣或者需要定制的功能的可以通过源码编译安装。

DBLE 官方文档:

https://actiontech.github.io/dble-docs-cn

可以详细了解 DBLE 的背景和应用场景,本文未涉及到的细节都可在官方文档获得。

DBLE 下载地址:

https://github.com/actiontech/dble/releases

[点击学习 DBLE 公开课,Mycat 用户更快上手哦!]

Tips:建议下载最新的 Releases 版本,下载 tar 压缩包即可,如有源码编译需求的,可以下载源码包。

二、版本概况

距上一次 4 月 22 日【发版(2.19.03.0)】已有两个多月,DBLE 社区又迎来了新版本的更新。

最新的 Release Notes 请参考:

https://github.com/actiontech/dble/releases

新增 7 个特性,修复了 36 缺陷;

//划重点

  • 感谢 Github 用户提供的优质 issue ,还有 QQ 群提供的有效反馈的朋友

  • issue 反馈质量不断提高,保证了快速响应修复

  • 发版频率在稳定后会降低到两个月一次

三、新特性

本次重点功能更新主要增加如下几点:

  • 支持 MySQL 8.0(alpha特性)

  • 对存储过程 hint 的完整支持 支持自定义告警接口(alpha特性)

  • 优化最大连接数的默认值修改方式

  • 更便捷的配置模板

四、升级兼容性

新版 DBLE 完全兼容以往功能。

这次的更新离不开 DBLE 社区爱好者们的热情支持,是你们的试用实践使得 DBLE 功能越加稳定和成熟。

未来 DBLE 社区将继续积极地推动 DBLE 的开源,让更多的 MySQL 用户能够使用到免费好用的分布式中间件。

五、DBLE Release Notes

Features:

  • Change the default max size of frontend connection for each user #1218

  • Support MySQL8.0’s default authentication plugin named ‘caching_sha2_password’ #1134

  • Split Origin Merge to Merge And MERGE_AND_ORDER for Explain Plan  #1139  

  • Optimize global sequence generated by distributed timestamp #1138

  • Improve dble’s config template #1078

  • The error messages should be more meaningful when dble instances are doing DDL simultaneously in one cluster #1105

  • Support Stored procedure when connection enabled multiple statements

  • Define alarm interface for developers to customize

Bug-fixes: 

  • An error occurred while using Alibaba Cloud slb load balancing #1172

  • Unknown pStmtId error when closing a prepared-statement that statement is the same as another in one connection #1236

  • Backend conns will be closed when executing ‘log @@limit=0,5000’ in dble managed port #1220

  • The network interrupt between dble and MySQL node before XA commit, the transaction lock in MySQL will always exist #1084

  • Load data incorrect when the text contains a row with all null columns #1047

  • SqlJob may finish more than once, and cause other problem #1231

  • FetchStoreNodeOfChildTableHandler can cause serverConnection hang & leak of MySQL connection #1180

  • NPE when using global sequence generated by MySQL-offset-step #1227

  • MultiNodeQueryHandler#errorResponse add only one connection to errConnection list #1166, thanks @tankilo

  • DateNode Idle Check Thread failed to fill empty dataSource when dataHost’s minCon is less than database size, thanks @tankilo

  • When MultiNodeQueryHandler send multiple SQL statements to MySQL, if the middle part failed to execute, frontend session will hang #1164, thanks @tankilo

  • When complex cross join contained in an XA-transaction, the statement commit can’t return #1116, thanks @kaikai2000

  • multinode statement hang when setting statement error before executing

  • Fail to recover XA Transaction on startup when XA log is not flushed and the server is down #1192

  • Xa transaction commit failed due to network exception and could not be recovered by restarting dble #1113

  • Even if the transaction is successfully restored, the state of the XA transaction in XA-log will always fail #1213

  • Sending a statement to an uncreated physical database can cause thread safety problem #1144

  • dble hang while inserting values into sharding table after executing “lock tables … write” #1203

  • For sharding tables(the two tables have the ER relationship), now “left join” got the result from only one dataNode #1197

  • Load data will cause an exception when the column content only has one ‘”‘ at the beginning #1182, thanks @ssxlulu

  • When implicit XA transaction fails to commit and is automatically rollbacked, the real error should be returned to the user instead of OK packet #1170, thanks @tankilo

  • `Load data` execution result error when the load data file is empty #1198

  • XA Transaction failed to commit due to the previous one’s remaining error message((XACommitNodesHandler)MultiNodeHandler#isFailed) #1156, thanks @tankilo

  • DDL lock can’t be released when the server connection is abnormally closed #1168

  • when running Sysbench OLTP test, XA transaction can’t restore correctly after restarting dble #1114, thanks @kaikai2000

  • It is recommended that `ZK` allow both uppercase and lowercase in the file of sequence_distributed_conf.properties #1162

  • if where filter‘s length of complex query lager than 255, dble may return error #1120

  • load data for a table using global sequence can not generate sequence column #1048

  • Global sequence error when generated by distributed timestamps #1153

  • show @@binlog.status query failed if all logic databases corresponding physical one’s not created #1088

  • Some of the SQL Method params in a complex query must be uppercase #1132

  • Need to optimize, when starting dble, the configuration does not include the tables involved in the view #1100

  • SQL returns an error, after the MySQL node disconnects during DDL execution #1119

  • `Select query` to get results from multiple nodes may lead to thread safety problem #1147

  • Error when ` select * from sharding_2_t1 a right join sharding_4_t1 b on a.id=b.ID where a.id >0 and a.id <4` #1142

  • manager cmd “create database” error when connecting to dble with JDBC #1245 

近期社区动态

第三期 社区技术内容征稿所有稿件,一经采用,均会为作者署名。

征稿主题:MySQL、分布式中间件DBLE、数据传输组件DTLE相关的技术内容

活动时间:2019年6月11日 – 7月11日

本期投稿奖励

投稿成功:京东卡200元*1

优秀稿件:京东卡200元*1+社区定制周边(包含:定制文化衫、定制伞、鼠标垫)

优秀稿件评选,文章获得“好看数量排名前三的稿件为本期优秀稿件。