写点什么

GreatSQL 社区与 Amazon、Facebook、Tencent 共同被 MySQL 致谢

作者:GreatSQL
  • 2023-11-20
    福建
  • 本文字数:5016 字

    阅读完需:约 16 分钟

GreatSQL 社区与 Amazon、Facebook、Tencent 共同被 MySQL 致谢

一、来自 MySQL 官方的感谢

在 2023-10-25 MySQL 官方发布的 8.2 版本 Release Notes 中,GreatSQL 社区核心开发者 Richard DangHao Lu ,分别收到了来自 MySQL 官方的贡献感谢,与 Amazon、Facebook(Meta)、Tencent 等一并出现在感谢清单中。详见:



Richard Dang

Richard Dang 发现在 MySQL 8.0.29 中,如果一个 MySQL 表具有在 8.0.29 版本之前添加的 INSTANT ADD 列(从该版本开始不允许),并且在 MySQL 升级到高于 8.0.29 的版本后,对这些表执行 DML 语句将导致服务器意外关闭。


在将此情况上报给 MySQL 上游社区的同时,他还对此 BUG 进行了详细研究,在 GreatSQL 社区公众号上发表了一篇文章:“MySQL 8.0.29 instant DDL 数据腐化问题分析”,并在最后给出了该 bug 的修复方案。大家有兴趣可以前往浏览~


Hao Lu

Hao Lu 则在 MySQL 8.0.30 中发现,针对首次调用后未正确执行的存储程序的先前修复,会发生无法涵盖其中包含 SET 语句的情况。


二、Contributions By GreatSQL

除本次收到的两个 MySQL 官方感谢反馈贡献之外,事实上 GreatSQL 社区一直在坚持技术的研究与创新,致力于开发优化更好的数据库产品。数位 GreatSQL 核心研发团队成员已累计向 MySQL 社区提交多个重要 BUG 反馈,默默的进行着技术贡献与积累。


GreatSQL 是基于 Percona Server 的 MySQL 分支,具备高性能高可靠高易用性高安全等多个核心特性,可以作为 MySQL 或 Percona Server 的可选替换,用于线上生产环境,且完全免费并兼容 MySQL 或 Percona Server。


GreatSQL 在以下几个方面对 MySQL 进行大刀阔斧改进提升,选择 GreatSQL 让线上业务系统更流畅、更安心。


  1. 高性能


  • 支持 InnoDB 并行查询,适用于轻量级 OLAP 应用场景,在 TPC-H 测试中平均提升 15 倍,最高提升 40+倍。

  • 优化 InnoDB 事务系统,实现了大锁拆分及无锁化等多种优化方案,OLTP 场景整体性能提升约 20%。

  • 支持并行 load data,适用于频繁导入大批量数据的应用场景,性能可提升约 20+倍。

  • 支持线程池(thread pool),降低了线程创建和销毁的代价,保证高并发下,性能稳定不会明显衰退。


  1. 高可靠。GreatSQL 针对 MGR 进行了大量改进和提升工作,进一步提升 MGR 的高可靠等级。


  • 地理标签,提升多机房架构数据可靠性。

  • 读写节点动态 VIP,高可用切换更便捷。

  • 仲裁节点,用更低的服务器成本实现更高可用。

  • 快速单主模式,在单主模式下更快,性能更高。

  • 智能选主,高可用切换选主机制更合理。

  • 全新流控算法,使得事务更平稳,避免剧烈抖动。

  • 优化了节点加入、退出时可能导致性能剧烈抖动的问题。

  • 解决磁盘空间爆满时导致 MGR 集群阻塞的问题。

  • 解决了长事务造成无法选主的问题。

  • 优化事务认证队列清理算法,规避每 60s 抖动问题。

  • 修复了 recover 过程中长时间等待的问题。


  1. 高易用性。支持多个 Oracle 兼容性,包括 CLOB、VARCHAR2 数据类型,DATETIME 运算、ROWNUM、子查询无别名、EXPLAIN PLAN FOR 等语法,以及 ADD_MONTHS()、CAST()、DECODE()等 17 个函数。在即将发布的 GreatSQL 新版本中,会更加更多 Oracle 兼容数据类型、函数、语法、存储过程等特性,进一步降低用户迁移成本。

  2. 高安全性。支持逻辑备份加密、CLONE 备份加密、审计日志入表、表空间国密加密等多个安全提升特性,进一步保障业务数据安全,更适用于金融级应用场景。

三、展望未来

未来,社区将继续深耕数据库技术领域,以技术为基进行开发优化, 打造更稳定、更流畅、更好用的 GreatSQL 开源数据库。同时,社区目前也在持续招募代码、文档、博客等多方面的贡献者,共同建设 GreatSQL 社区!

附录:GreatSQL 社区贡献清单

1、MySQL Server: Replication

  1. Bug #93809 lost a whole file's gtid_Phoenix Zhanghttps://bugs.mysql.com/bug.php?id=93809

  2. Bug #93978 XA COMMIT success with same xid_Phoenix Zhanghttps://bugs.mysql.com/bug.php?id=93978

  3. Bug #99628 semi sync master not handle ack packet correctly when recv packet timeout_lou shuaihttps://bugs.mysql.com/bug.php?id=99628

  4. Bug #107310 create user with comment lead replication error_Phoenix Zhanghttps://bugs.mysql.com/bug.php?id=107310

2、MySQL Server: Group Replication

  1. Bug #98151 group replication with wrong member_state after server shutdown_Phoenix Zhanghttps://bugs.mysql.com/bug.php?id=98151

  2. Bug #98643 group replication will be block primary node shutdown_Phoenix Zhanghttps://bugs.mysql.com/bug.php?id=98643

  3. Bug #99689 member cannot add to group_replication cluster after failover_Phoenix Zhanghttps://bugs.mysql.com/bug.php?id=99689

  4. Bug #100163 xa commit failed when stop group_replication will lead node error_Phoenix Zhanghttps://bugs.mysql.com/bug.php?id=100163

  5. Bug #100299 secondly role cannot join to group_replication after fail-over_Phoenix Zhanghttps://bugs.mysql.com/bug.php?id=100299

  6. Bug #101237 stop group_replicaiton may block long time when restart server_Phoenix Zhanghttps://bugs.mysql.com/bug.php?id=101237

  7. Bug #101635 group_replication_local_address port overflow_Phoenix Zhanghttps://bugs.mysql.com/bug.php?id=101635

  8. Bug #104629 wrong result when outer join prune partition tables with is null predicate_Lou Shuaihttps://bugs.mysql.com/bug.php?id=104629

  9. Bug #107635 event scheduler cause error on group replication_Lou Shuaihttps://bugs.mysql.com/bug.php?id=107635

  10. Bug #103040 minor fix for DEBUG message in XCOM_Lou Shuaihttps://bugs.mysql.com/bug.php?id=103040

  11. Bug #100984 group_replication state become error when fail-over node restart_Phoenix Zhanghttps://bugs.mysql.com/bug.php?id=100984

  12. Bug #101901 select performance_schema.replication_group_member_stats assert in release mode_Phoenix Zhanghttps://bugs.mysql.com/bug.php?id=101901

3、MySQL Server: XA transactions

  1. Bug #94130 XA COMMIT may lead replication broken_Phoenix Zhanghttps://bugs.mysql.com/bug.php?id=94130

  2. Bug #98288 xa commit crash lead mysql replication error_Phoenix Zhanghttps://bugs.mysql.com/bug.php?id=98288

  3. Bug #99205 xa prepare write binlog while execute failed_Phoenix Zhanghttps://bugs.mysql.com/bug.php?id=99205

  4. Bug #100156 XA COMMIT still work after stop group_replication_Phoenix Zhanghttps://bugs.mysql.com/bug.php?id=100156

  5. Bug #102661 xa prepare failed lead replication error_Phoenix Zhanghttps://bugs.mysql.com/bug.php?id=102661

4、MySQL Server: InnoDB storage engine

  1. Bug #99638 xa transaction with low performance_Phoenix Zhanghttps://bugs.mysql.com/bug.php?id=99638

  2. Bug #87884 MySQL 5.7.15 hangs when executing truncate table_Lou Shuaihttps://bugs.mysql.com/bug.php?id=87884

  3. Bug #87299 mysql crash sometimes_Lou Shuaihttps://bugs.mysql.com/bug.php?id=87299

  4. Bug #84488 InnoDB: Failed to create check sector file_Lou Shuaihttps://bugs.mysql.com/bug.php?id=84488

  5. Bug #107044 server exit after alter table discard tablespace_Deng Ylhttps://bugs.mysql.com/bug.php?id=107044

  6. Bug #105271 When the innodb_system tablespace is full, sometimes directly coredump_Deng Ylhttps://bugs.mysql.com/bug.php?id=105271

  7. Bug #111823 crash upgrade to 8.0.32/8.0.34 if tables in mysqldb has instant column_Richard Danghttps://bugs.mysql.com/bug.php?id=111823

5、MySQL Server

  1. Bug #99679 stop group_replication will assert_Phoenix Zhanghttps://bugs.mysql.com/bug.php?id=99679

  2. Bug #82830 Load data error 1262 behaviour different between 5.6 and 5.7 under strict sqlmod_Lou Shuaihttps://bugs.mysql.com/bug.php?id=82830

6、MySQL Server: Optimizer

  1. Bug #100028 LIKE behavior is not same_Phoenix Zhanghttps://bugs.mysql.com/bug.php?id=100028

  2. Bug #100800 wrong result when select int column with range_Lou Shuaihttps://bugs.mysql.com/bug.php?id=100800

  3. Bug #100783 wrong result with hash join_Lou Shuaihttps://bugs.mysql.com/bug.php?id=100783

  4. Bug #98718 explain anaylze select count(*) from mysql.user coredump under debug version_Lou Shuaihttps://bugs.mysql.com/bug.php?id=98718

  5. Bug #68154 explain output 'Using index condition' not proper_Lou Shuaihttps://bugs.mysql.com/bug.php?id=68154

  6. Bug #107969 wrong result when search binary columns_Lou Shuaihttps://bugs.mysql.com/bug.php?id=107969

  7. Bug #110801 prepared stmt of setting sp_var from subselect leads crash when re-create table_Hao Luhttps://bugs.mysql.com/bug.php?id=110801

7、MySQL Server: Partitions

  1. Bug #101310 partition by key distribute unbalance for utf8_Phoenix Zhanghttps://bugs.mysql.com/bug.php?id=101310

8、MySQL Server: Options

  1. Bug #101469 skip_name_resolve does not take effect_Phoenix Zhanghttps://bugs.mysql.com/bug.php?id=101469

9、MySQL Server: Information schema

  1. Bug #99094 coredump when install information schema plugin_Lou Shuaihttps://bugs.mysql.com/bug.php?id=99094

10、Connector / C++

  1. Bug #99093 mysql-connector-cpp cmake files not work well when as a third party_Lou Shuaihttps://bugs.mysql.com/bug.php?id=99093

11、MySQL Server: Query Cache

  1. Bug #70032 Query cache works for partition table if there is a derived table_Lou Shuaihttps://bugs.mysql.com/bug.php?id=70032

12、MySQL Server: Security: Privileges

  1. Bug #64532 columns_priv record not clear or modify when table defination changed_Lou Shuaihttps://bugs.mysql.com/bug.php?id=64532

  2. Bug #104732 In the case of using the role, there is a problem with the acl check of the view_Deng Ylhttps://bugs.mysql.com/bug.php?id=104732

13、MySQL Server: Connection Handling

  1. Bug #102669 incorrect comment in source code_Hao Luhttps://bugs.mysql.com/bug.php?id=102669

14、MySQL Server: DML MySQL

  1. Bug #104201 Wrong result when compare 'null' with subquery result_Deng Ylhttps://bugs.mysql.com/bug.php?id=104201

  2. Bug #104250 kill query will case some mysql client block_Deng Ylhttps://bugs.mysql.com/bug.php?id=104250

  3. Bug #99639 Wrong behavior between insert and insert...select_Roger Leihttps://bugs.mysql.com/bug.php?id=99639

  4. Bug #100053 Lost ULLONG_MAX value in table with type of bit(64)_Roger Leihttps://bugs.mysql.com/bug.php?id=100053

15、MySQL Server: Performance Schema

  1. Bug #93592 mysql crash got signal 6 ,free(): invalid next size (normal):_Lou Shuaihttps://bugs.mysql.com/bug.php?id=93592

16、MySQL Server: DDL

  1. Bug #111770 group replication lost transaction when import tablespace failed_Gang Liuhttps://bugs.mysql.com/bug.php?id=111770

  2. Bug #111888 'alter table xxx import tablespace' lead server crash_Gang Liuhttps://bugs.mysql.com/bug.php?id=111888

  3. Bug #112049 changing implicit pk leads crash after restart_Hao Luhttps://bugs.mysql.com/bug.php?id=112049

17、MySQL Server: Documentation

  1. Bug #68177 innodb_log_file_size with wrong default value_Lou Shuaihttps://bugs.mysql.com/bug.php?id=68177

  2. Bug #112001 Wrong Authorized User_Haoyuan Zhanghttps://bugs.mysql.com/bug.php?id=112001


发布于: 刚刚阅读数: 3
用户头像

GreatSQL

关注

GreatSQL社区 2023-01-31 加入

GreatSQL是由万里数据库维护的MySQL分支,专注于提升MGR可靠性及性能,支持InnoDB并行查询特性,是适用于金融级应用的MySQL分支版本。 社区:https://greatsql.cn/ Gitee: https://gitee.com/GreatSQL/GreatSQL

评论

发布
暂无评论
GreatSQL社区与Amazon、Facebook、Tencent共同被MySQL致谢_greatsql_GreatSQL_InfoQ写作社区