Skip to content

Releases: MyCATApache/Mycat2

v1.22-2022-6-25

25 Jun 04:03
Compare
Choose a tag to compare

1.修复native模式update/insert发生出现阻塞的问题
2.优化blob接收逻辑
3.修复存储过程只能接收一个结果集的问题
4.支持设置Mycat会话的网络缓冲区
5.修复下推全局表后,数据分片中的分片条件丢失的问题
6.优化字段的非空属性判断逻辑
7.修复某些情况忽略主从心跳异常导致主从切换失败
8.支持SQL类型的权限拦截
9.修复单表路由(HackRouter)出现duplicate key错误
10.自动检查不活动的后端连接并回收
在datasource.json的removeAbandonedTimeoutSecond控制,默认180秒,不活动(没有sql操作)自动回收
11.支持clickhourse后端数据源(打包内置),使用的驱动是

ru.yandex.clickhouse
clickhouse-jdbc
0.3.2

xx.datasource.json
{
"dbType":"clickhouse",
"type":"JDBC",
"url":"jdbc:clickhouse://192.168.28.128:8123"
...
}
clickhourse后端数据源只支持select语句和insert语句,没有自增值返回
12.修复HTTP实现的分片算法,使用截断表语句,失效
13.修复使用native模式,出现ArrayStore异常
14.修复BKAJOIN报错
15.提供基于HTTP调用实现的分片算法(测试)
16.修复涉及BKAJOIN回表的情况下,生成的sql条件会全表扫描
17.修复生成sql带有重复字段,导致查询报错#706
18.升级BKAJOIN的条件生成算法,支持更多条件下推
19.修复涉及回表的情况下,行类型不匹配,全局二级索引没有生效
20.分片表支持1<col and col < 10 范围查询
21.修复全局索引表数量大于1的时候,无法使用全局索引表
22.修复BKAJOIN执行计划报错以及优化BKAJOIN的执行计划生成
23.新增全局表自增序列号的插入的三种方式
24.支持设置会话粘滞时间
25.user.json配置支持rsa加密(zyw提交代码)
26.修复drop表,在自动加载单表的情况下,需要执行两次
27.修复spm初始化的时候报编码错误
28.修复单表路由处理with子句的时候报错#697
29.完善drop表的功能(深圳-木先生-测试报告)
30.修复分片表不写分片条件或者全表扫描的时候,使用mysql index hint生成的sql错误#695
31.修复mycat库下的表没有主键,导致某些集群类型无法同步#698
32.完善drop逻辑表,这个版本之后会删除存储节点的数据
33.完善alter语句,支持自定义分片算法的分片表,自定义存储节点的单表/全局表,但不支持全局二级索引表
34.添加mysql后端连接泄露检查的功能(见数据源配置)
35.修复xa事务在不涉及跨库事务的情况下升级到了xa事务的问题(proxy事务没有影响)
36.修复xa事务在不跨库事务下保留了后端连接,导致读写分离失败以及后端连接因为长时间不活动被mysql关闭后,出现mycat的旧连接没有响应的情况(proxy事务没有影响)
37.添加若干个用于检查连接泄露的debug级别日志
该版本合拼了1.22分支的代码与1.22没有区别
38.支持会话粘滞
39.支持PHP-Admin(可能遇到获取不了表的情况,可以改动PHP-Admin的源码实现过滤没有表名)
40.完善全局序列号,null和0值的替换为自增值
41.修复PHP-Admin执行
SELECT SCHEMA_NAME FROM INFORMATION_SCHEMA.SCHEMATA, (SELECT DB_first_level FROM ( SELECT DISTINCT SUBSTRING_INDEX(SCHEMA_NAME, '', 1) DB_first_level FROM INFORMATION_SCHEMA.SCHEMATA WHERE TRUE ) t ORDER BY DB_first_level ASC LIMIT 0, 100) t2 WHERE TRUE AND 1 = LOCATE(CONCAT(DB_first_level, ''), CONCAT(SCHEMA_NAME, '_')) ORDER BY SCHEMA_NAME ASC;
42.修复回滚事务或者强制放弃druid jdbc连接有可能连接泄露,主要原因是druid强制放弃连接没有关闭连接
43.修复偶然回滚事务发生空指针错误导致连接泄露
44.修复TBPARTITION BY RIGHT_SHIFT 分表不均匀 #682
45.修复TBPARTITION BY RIGHT_SHIFT 分表不均匀 #682
46.insert语句的duplicate子句不限制表达式#678
47.分片表与全局二级索引表的insert语句支持duplicate子句
48.修复分片表describe 逻辑表在sqlyog报错
49.修复update语句对全局二级索引表没有进行set列剪裁以及出现参数化错误#673
50.修复show databases,使用单表覆盖information.schemata表,出现语法错误
51.修复全局二级索引使用二级索引字段报错#668
52.修复show databases,使用单表覆盖information.schemata表,出现语法错误
53.修复全局二级索引使用二级索引字段报错#668
54.修复虚拟表information.tables/information.columns因为生成的建表语句的库名表名带有关键字而不带``导致解析错误,这个错误不影响正常使用

  1. fix the blocking problem in the native mode update/insert
  2. optimize blob receiving logic
  3. fix the problem that the stored procedure can only receive one result set
  4. support setting the network buffer of MYCAT session
  5. fix the problem of missing sharding conditions in data sharding after the global table is pushed down
  6. non empty attribute judgment logic of optimized fields
  7. fix some cases where the master-slave handover fails due to ignoring the abnormal heartbeat of the master-slave
  8. support SQL type permission interception
  9. duplicate key error occurs when repairing the hackrouter
  10. automatically check inactive back-end connections and recycle
    In datasource The removeabandonedtimeoutsecond control of JSON is 180 seconds by default. Inactivity (no SQL operation) is automatically recycled
  11. support clickhour back-end data sources (packaged and built-in). The driver used is
ru. yandex. clickhouse clickhouse-jdbc 0.3.2 xx. datasource. json { "dbType":"clickhouse", "type":"JDBC", "url":"jdbc:c lickhouse://192.168.28.128:8123 " ... } The clickhour backend data source only supports select and insert statements without self increment return 12. repair the fragmentation algorithm implemented by HTTP, and use the truncated TABLE statement, which is invalid 13. repair the arraystore exception when using native mode 14. fix bkajoin error 15. provide fragment algorithm based on HTTP call (test) 16. when the repair involves bkajoin back to the table, the generated SQL conditions will be scanned in the whole table 17. repair the generated SQL with duplicate fields, resulting in query errors \706 18. upgrade the condition generation algorithm of bkajoin to support more condition push down 19. when the repair involves a back table, the row types do not match, and the global secondary index does not take effect 20. the partition table supports 1

v1.21-2022-4-7

07 Apr 09:16
Compare
Choose a tag to compare

1.fix union all rewriting sql has error
2.support fullTableScanLimit
3.improve condition analyse
4.support C# client
5.supoort select dual push down
6.fix select 'x' alias wih ''
7.update guava to 31.0.1-jre
8.update mysql-connector-java to 8.0.25
9.update fastjson to 1.2.79
10.fix wrong lastMessage
11.support HAProxy ProxyProtocol
12.support fullTableScanException
13.remove unused jar
14.fix maven package
15.support slb
16.fix prerpare command reveives wrong date value
17.improve backend connection scheduler
18.fix record slow sql has wrong collation
19.support asyncDDL setting
20.fix dist join has died lock
21.add thread hint tool
22.add kill packet command
23.add pushShowOnPrototype setting
24.normal/global table 's delete/update statement supports join datasource
25.fix Colocated push lost mysql hint
26.add PartitionByDateEx function
27.add rewriteInsertBatchedStatementBatch setting
28.add xxx.user.json isolation setting
29.fix
com.mysql.jdbc.PacketTooBigException: Packet for query is too large (23 > -1). You can change this value on the server by setting the max_allowed_packet' variable.
30.improve performance by remove autocommit/isolation in getting backend connection
31.logical database supports '-'' in name
32.shading table sql support json function ->
33.fix SELECT * FROM A WHERE aid IN (SELECT DISTINCT aid FROM B ) B is Sharding table ,aid
is non unique column

v1.21-2022-2-18

18 Feb 13:24
Compare
Choose a tag to compare

1.add more Prometheus exporter info and fix it can not start Prometheus port
2.fix oom
3.fix mycat.sql_log table's sqlTime changed to bigint
4.fix can not rollback transcation when the mycat session closed.

v1.21-2022-1-24

08 Feb 04:42
Compare
Choose a tag to compare

v1.21-1-17

17 Jan 13:02
Compare
Choose a tag to compare
  1. Exception prompt for adding single table failed
  2. Fix the MHA cluster heartbeat statement error
  3. Explain statement supports displaying collocatedpushdown
  4. Fix the inconsistency between the fields of the back-end pull result set and the MYCAT CREATE TABLE statement. There is no exception prompt, but the empty result set is displayed
  5. Fix the error that the sortjoin optimization rule does not solve the parameterized expression
  6. Support select @ @ foreign_ KEY_ CHECKS,SELECT @@innodb_ file_ per_ table =1; The return values are fixed and used for compatibility with some frameworks
  7. Reconstruct the preprocessing, support sysbanch test, be compatible with the preprocessing statements of MySQL C client, and improve the deprecateeof compatibility
  8. Improve the partition tailoring and push down of < = > semantics
  9. The default JDBC querytimeout is 0
  10. Heartbeat configuration supports the showlog attribute to configure heartbeat log output
  11. Partitionbyprefixpattern / partitionbypattern / partitionbymurmurhash / partitionbyfilemap / autopartitionbylong support mapfile attribute
  12. Ignore the error of XA recoverylog when initializing the database, because XA is not used for read-write separation
  13. Partitionbypattern supports the defaultnode attribute
  14. The condition of update / delete statement supports table Expression for column
  15. Fix the problem that JDBC manager cannot load mongodb driver
  16. Fix the problem of not writing the alias 1054 unknown column in 'where clause' under a single node
  17. You can use SQL to create fragment tables without configuring C0 nodes
  18. Fix the null result set error of show global variables
  19. Failed to repair delete table configuration
  20. Utf8 code is used for repairing and building database, and now it has been changed to utf8mb4 code
  21. The repair meta information table has no built-in parameters
  22. Fix the error that DDL cannot be executed in parallel (#631)
  23. Support lock function
  24. Support virtual tables
  25. Support MYCAT UI

v1.21-2021-12-17

17 Dec 07:09
Compare
Choose a tag to compare

1.fix MGR cluster
2.make xa recovery that skip readonly connection
3.improve distinct/union/join push down
4.like operator icase insensitive
5.be divorced from prototype server(support visual system table)
6.support for logical view
7.support for physical stored procedures
8.support partition key based push down
9.support savepoint

v1.20-2021-12-17

17 Dec 07:00
Compare
Choose a tag to compare

fix MGR cluster

v1.20-2021-12-14

14 Dec 12:32
Compare
Choose a tag to compare

1.adapte dbeaver
2.where id = ,equals not case insensitive
3.support /+mycat:schema=ds2/
4.fix Prometheus
5.fix pstmt use old param
6.fix DATE_SUB
7.fix union all merge resultset
8.support uuid function

hotfix

21 Oct 15:22
Compare
Choose a tag to compare

1.replace simpleLogger to logback ,add kafka connector
2.fix showSlowSql
3.fix createTable hint
4.fix alter column statement
5.support desc schema.table
6.fix hide cast expr occurs Partition clipping failed
7.fix NlsString occurs error route sql

hotfix

27 Aug 07:40
Compare
Choose a tag to compare

1.repair front end connection leaks
2.improve monitor
3.fix replica monitor occurs null exception