dble 不支持的关键字 mysql_分布式 | DBLE Release Notes 详细解读 2.19.11.0

伴随着各行各业的节后复工,DBLE 2.19.11.0 也在今天顺利发版,不期而至!

2.19.11.0 版本DBLE Release Notes

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

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

一、DBLE 项目介绍

二、新版本概况

三、主要更新解读

四、完整的 DBLE Release Notes 及翻译

一、DBLE 项目介绍

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

DBLE

破壳日:2017.10.24

爱好:开源

技能:数据水平拆分、读写分离、分布式事务支持、多分片算法、全局 ID、IP/SQL 黑白名单

特长:MySQL 语法兼容、复杂查询优化、低改造成本、成熟稳定、成熟技术栈DBLE 官方项目:https://github.com/actiontech/dble如对源码有兴趣或者需要定制的功能的可以通过源码编译安装

DBLE 官方文档(已更新):https://actiontech.github.io/dble-docs-cn可以详细了解 DBLE 的背景和应用场景,本文未涉及到的细节都可在官方文档获得

官方课程:点击学习《DBLE 快速上手》,实操视频 + 图文稿!

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

二、新版本概况

距离(2.19.09.0)发布 90 天后 ,2.19.11.0 版本发布;

新版 dble 新增重构功能 13 个,修复缺陷 28 个,向后兼容性调整 2 处;

致谢:感谢以下人员对社区做出的贡献:@Lordess,@zhaoshan86,@liuxinwang,@ssxlulu.

感谢 Github 用户提供的优质 issue

感谢 QQ 群(669663113)内朋友提供的有效反馈

三、主要更新解读

这次版本更新的主要特性是针对全局表检查方式[#1558]

1. 全局表检查简介全局表是 dble 中一种特殊类型的表格,一般来说认为在一个全局表 table_a 所有分布的节点上,table_a 因同时满足以下两个条件:拥有相同的表格结构

拥有相同的表格数据

但事实上在系统和 dble 的运行过程中,可能由于一些不可避免分布式事务方面的误差,导致在长时间运行之后,不同节点上面的 table_a 上面的数据不一致。

为了及时的发现问题并不再造成更进一步的错误,dble 中采用定时进行表格数据检查的方式对于 table_a 中的数据一致性进行检查,并及时把检查的结果通知到运维人员。

2. 支持自定义全局表检查的开发及使用

四、完整的 DBLE Release Notes 及翻译

翻译

我们发布了新版本 2.19.11.0。首先,我们必须感谢以下人士对我们社区的贡献:@Lordess,@zhaoshan86,@liuxinwang,@ssxlulu

特性:[#1607] 更改bufferPoolPageNumber的默认值

[#1585] 为某些管理命令添加过滤条件

[#1575] 增加管理命令,用于展示某个连接最近的SQL状态细节(执行中步骤)

[#1566] 添加命令show @@ data_distribution以显示表的数据分布

[#1564] 为 show@@ connection.sql 添加STAGE列

[#1558] 移除原有的全局表检查方式,添加通用的全局表检查并允许自定义全局表检查方式

[#1544] 心跳可以检查后端是否为只读

[#1543] 在DBLE的server.xml中添加属性 autocommit

[#1539] 视图的用法增强,支持垂直拆分view透传

[#1527] 添加新命令 show@@ Questions

[#1526] 将schema.xml 中的primaryKey更名为cacheKey

[#1521] 拆分转储文件时,支持不带“create table” stmt的转储文件

[#1362] 支持kill query语句

缺陷修复:[#1532] 处理小数据文件时,LOAD DATA INFILE在将数据发送到MySQL之前未对数据进行字符集编码,谢谢@Lordess报告该错误。

[#1489] 在某视图中使用另一个视图的复杂查询将得到错误“未找到列”

[#275] 对不同全局表的union查询,结果集未合并

[#563] 在全局表上使用“自然联接”时,结果不正确

[#622] 非法“create table”语法对全局表执行成功

[#775] 查询[加载数据...]到全局表中,列_dble_op_time可能需要特殊的句柄

[#1582] 在ZooKeeper模式下,在 reload @@ config_all 之后,DataHost的心跳属性未同步

[#1451] 当b是表的列名之一时,SQL select a as b from table group by a 返回错误

[#1513] 在XA End阶段之前杀死后端连接之一时,提交XA事务将返回“lost connection”错误

[#1638] 重启mysql节点,导致错误并无法恢复:the data source[XXX] can't reach. Please check the dataHost status

[#1538] 将dataHost从disabled更改为enabled ,心跳无法恢复

[#1622] 在某些情况下会导致内存泄漏

[#1524] 代码重构:DDL与常规查询分开

[#1525] 语法 limit 0 将返回所有行,感谢@ssxlulu报告该错误。

[#1453] 在[union]中将用户变量用于[order by]将返回错误

[#1618] 复合SQL语句返回包错误

[#1583] 将DBLE嵌套作为DBLE的后端,感谢@ zhaoshan86报告该错误。

[#1643] 执行查询“show warnings”导致错误:Lost connection to MySQL server during query

[#1465] Schema.xml数据节点名称和数据库的属性值总和应相等

[#1602] dble在[lower_case_tables_name = 1] 下使用大写表别名的查询会发生Explain错误

[#1541] 如果几十个数据主机的数据节点过多(> 700),则由于 testConn 线性逻辑,启动/重新加载将变慢

[#1507] 当文件中有单独的行“ \”时,load data将返回错误

[#1466] [select b.id from test join sharding_2_t1 b on test.id/b.id>1.001]结果与mysql不一致

[#1459] 对于非分片表,全局序列无法正常工作,谢谢@liuxinwang报告该错误。

[#1455] 查询[SELECT * FROM t1 a left join t2 c on a.id=c.id and a.id=@id_a;]报告字段未找到:@id_a

[#1417] DBLE返回的列类型与MYSQL数据库不一致。

[#1403] 多语句的LOAD DATA包 packet ID错误

[#753] 不支持关键字作为表名或者列名,即使使用了重音符号

打破向后兼容性:[#1558] 删除旧的全局表检查逻辑。添加新的通用全局表检查并允许自定义全局表检查

[#1526] 将schema.xml 中的primaryKey更名为cacheKey

Release Notes:

We have released a new version 2.19.11.0.Firstly, we must thanks to the following people for their contributions to our community:@Lordess,@zhaoshan86,@liuxinwang,@ssxlulu

Features:[#1607] Change the default value of bufferPoolPageNumber

[#1585] Add filter condition for some manager command

[#1575] add an manager command to show recently(doing or done) query detail stage

[#1566] Add command show @@data_distribution to show data distribution for table

[#1564] Add STAGE for show @@connection.sql

[#1558] Remove old global table check. Add new general global table check & allow customization for global table check

[#1544] Heartbeat can check if backend is read_only

[#1543] Add propery autocommit to DBLE's server.xml

[#1539] strength usage of view, support MySQL view for vertical sharding

[#1527] Add new command show @@Questions

[#1526] Change primaryKey into cacheKey in schema.xml

[#1521] Support dump file without create table stmt when splitting dump file

[#1362] Support kill query statement

For more details, please read the document.

Bug-fixes:[#1532] LOAD DATA INFILE doesn't encode data before sending it to MySQL when dealing with a small data file, thanks @Lordess report the bug.

[#1489] Complex query using one view in another view will get an error `column not found`

[#275] Result set is not merged because of union query on different global tables

[#563] Incorrect result when natural join on the global table

[#622] Illegal "create table " syntax execute success for global table

[#775] Query [load data ...] to global table, column _dble_op_time may need special handle

[#1582] DataHost's heartbeat attribute is not synced after reload @@config_all in ZooKeeper mode

[#1451] SQL select a as b from table group by a returns error when b is one of the table's columns names

[#1513] Commit XA transaction will return lost connection error when killed one of the backend connection before XA end phase

[#1638] Restart mysql node causing the error: the data source[XXX] can't reach. Please check the dataHost status

[#1538] Change dataHost from disabled to enabled, the heartbeat does not recover

[#1622] Memory Leak in Some cases

[#1524] DDL separate from general queries

[#1525] Syntax limit 0 will return all rows, thanks @ssxlulu report the bug.

[#1453] Use user variables in [order by] with union got error

[#1618] Compound SQL statement returned package error

[#1583] Use DBLE as DBLE's backend, thanks @zhaoshan86 report the bug.

[#1643] Execute query "show warnings" causing an error : Lost connection to MySQL server during query

[#1465] Schema.xml datanode sums of attributes values of name and database should equal

[#1602] Explain a query with an uppercase table alias when [lower_case_tables_name=1], it will report error

[#1541] If there are too many datanodes(>700) for a few dozen datahost, starting/reloading will become slow because of testConn

[#1507] Load data returns an error when there is a separate line "\" in file

[#1466] [select b.id from test join sharding_2_t1 b on test.id/b.id>1.001] result not consistent with mysql

[#1459] Global sequence does not work correctly for the no-sharding table, thanks @liuxinwang report the bug.

[#1455] Query [SELECT * FROM t1 a left join t2 c on a.id=c.id and a.id=@id_a;] report field not found:@id_a

[#1417] The column type returned by DBLE is inconsistent with the MYSQL database.

[#1403] Packet ID error for LOAD DATA multi-Queries

[#753] dble does not support reserved words as table name or column name even use backtick

Breaking backward compatibility:[#1558] Remove old global table check. Add new general global table check & allow customization for global table check

[#1526] Change primaryKey into cacheKey in schema.xml

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值