GreatSQL 社区与 Amazon、Facebook、Tencent 共同被 MySQL 致谢
GreatSQL 社区与 Amazon、Facebook、Tencent 共同被 MySQL 致谢
一、来自 MySQL 官方的感谢
在 2023-10-25 MySQL 官方发布的 8.2 版本 Release Notes 中,GreatSQL 社区核心开发者 Richard Dang 和 Hao Lu ,分别收到了来自 MySQL 官方的贡献感谢,与 Amazon、Facebook(Meta)、Tencent 等一并出现在感谢清单中。详见:
MySQL 8.2 Release Notes / Changes in MySQL 8.2.0 (2023-10-25, Innovation Release):https://dev.mysql.com/doc/relnotes/mysql/8.2/en/news-8-2-0.html
MySQL 8.2.0 is out ! Thank you for the contributions !!https://blogs.oracle.com/mysql/post/mysql-820-is-out-thank-you-for-the-contributions
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 让线上业务系统更流畅、更安心。
高性能
支持 InnoDB 并行查询,适用于轻量级 OLAP 应用场景,在 TPC-H 测试中平均提升 15 倍,最高提升 40+倍。
优化 InnoDB 事务系统,实现了大锁拆分及无锁化等多种优化方案,OLTP 场景整体性能提升约 20%。
支持并行 load data,适用于频繁导入大批量数据的应用场景,性能可提升约 20+倍。
支持线程池(thread pool),降低了线程创建和销毁的代价,保证高并发下,性能稳定不会明显衰退。
高可靠。GreatSQL 针对 MGR 进行了大量改进和提升工作,进一步提升 MGR 的高可靠等级。
地理标签,提升多机房架构数据可靠性。
读写节点动态 VIP,高可用切换更便捷。
仲裁节点,用更低的服务器成本实现更高可用。
快速单主模式,在单主模式下更快,性能更高。
智能选主,高可用切换选主机制更合理。
全新流控算法,使得事务更平稳,避免剧烈抖动。
优化了节点加入、退出时可能导致性能剧烈抖动的问题。
解决磁盘空间爆满时导致 MGR 集群阻塞的问题。
解决了长事务造成无法选主的问题。
优化事务认证队列清理算法,规避每 60s 抖动问题。
修复了 recover 过程中长时间等待的问题。
高易用性。支持多个 Oracle 兼容性,包括 CLOB、VARCHAR2 数据类型,DATETIME 运算、ROWNUM、子查询无别名、EXPLAIN PLAN FOR 等语法,以及 ADD_MONTHS()、CAST()、DECODE()等 17 个函数。在即将发布的 GreatSQL 新版本中,会更加更多 Oracle 兼容数据类型、函数、语法、存储过程等特性,进一步降低用户迁移成本。
高安全性。支持逻辑备份加密、CLONE 备份加密、审计日志入表、表空间国密加密等多个安全提升特性,进一步保障业务数据安全,更适用于金融级应用场景。
三、展望未来
未来,社区将继续深耕数据库技术领域,以技术为基进行开发优化, 打造更稳定、更流畅、更好用的 GreatSQL 开源数据库。同时,社区目前也在持续招募代码、文档、博客等多方面的贡献者,共同建设 GreatSQL 社区!
附录:GreatSQL 社区贡献清单
1、MySQL Server: Replication
Bug #93809 lost a whole file's gtid_Phoenix Zhang➥https://bugs.mysql.com/bug.php?id=93809
Bug #93978 XA COMMIT success with same xid_Phoenix Zhang➥https://bugs.mysql.com/bug.php?id=93978
Bug #99628 semi sync master not handle ack packet correctly when recv packet timeout_lou shuai➥https://bugs.mysql.com/bug.php?id=99628
Bug #107310 create user with comment lead replication error_Phoenix Zhang➥https://bugs.mysql.com/bug.php?id=107310
2、MySQL Server: Group Replication
Bug #98151 group replication with wrong member_state after server shutdown_Phoenix Zhang➥https://bugs.mysql.com/bug.php?id=98151
Bug #98643 group replication will be block primary node shutdown_Phoenix Zhang➥https://bugs.mysql.com/bug.php?id=98643
Bug #99689 member cannot add to group_replication cluster after failover_Phoenix Zhang➥https://bugs.mysql.com/bug.php?id=99689
Bug #100163 xa commit failed when stop group_replication will lead node error_Phoenix Zhang➥https://bugs.mysql.com/bug.php?id=100163
Bug #100299 secondly role cannot join to group_replication after fail-over_Phoenix Zhang➥https://bugs.mysql.com/bug.php?id=100299
Bug #101237 stop group_replicaiton may block long time when restart server_Phoenix Zhang➥https://bugs.mysql.com/bug.php?id=101237
Bug #101635 group_replication_local_address port overflow_Phoenix Zhang➥https://bugs.mysql.com/bug.php?id=101635
Bug #104629 wrong result when outer join prune partition tables with is null predicate_Lou Shuai➥https://bugs.mysql.com/bug.php?id=104629
Bug #107635 event scheduler cause error on group replication_Lou Shuai➥https://bugs.mysql.com/bug.php?id=107635
Bug #103040 minor fix for DEBUG message in XCOM_Lou Shuai➥https://bugs.mysql.com/bug.php?id=103040
Bug #100984 group_replication state become error when fail-over node restart_Phoenix Zhang➥https://bugs.mysql.com/bug.php?id=100984
Bug #101901 select performance_schema.replication_group_member_stats assert in release mode_Phoenix Zhang➥https://bugs.mysql.com/bug.php?id=101901
3、MySQL Server: XA transactions
Bug #94130 XA COMMIT may lead replication broken_Phoenix Zhang➥https://bugs.mysql.com/bug.php?id=94130
Bug #98288 xa commit crash lead mysql replication error_Phoenix Zhang➥https://bugs.mysql.com/bug.php?id=98288
Bug #99205 xa prepare write binlog while execute failed_Phoenix Zhang➥https://bugs.mysql.com/bug.php?id=99205
Bug #100156 XA COMMIT still work after stop group_replication_Phoenix Zhang➥https://bugs.mysql.com/bug.php?id=100156
Bug #102661 xa prepare failed lead replication error_Phoenix Zhang➥https://bugs.mysql.com/bug.php?id=102661
4、MySQL Server: InnoDB storage engine
Bug #99638 xa transaction with low performance_Phoenix Zhang➥https://bugs.mysql.com/bug.php?id=99638
Bug #87884 MySQL 5.7.15 hangs when executing truncate table_Lou Shuai➥https://bugs.mysql.com/bug.php?id=87884
Bug #87299 mysql crash sometimes_Lou Shuai➥https://bugs.mysql.com/bug.php?id=87299
Bug #84488 InnoDB: Failed to create check sector file_Lou Shuai➥https://bugs.mysql.com/bug.php?id=84488
Bug #107044 server exit after alter table discard tablespace_Deng Yl➥https://bugs.mysql.com/bug.php?id=107044
Bug #105271 When the innodb_system tablespace is full, sometimes directly coredump_Deng Yl➥https://bugs.mysql.com/bug.php?id=105271
Bug #111823 crash upgrade to 8.0.32/8.0.34 if tables in mysqldb has instant column_Richard Dang➥https://bugs.mysql.com/bug.php?id=111823
5、MySQL Server
Bug #99679 stop group_replication will assert_Phoenix Zhang➥https://bugs.mysql.com/bug.php?id=99679
Bug #82830 Load data error 1262 behaviour different between 5.6 and 5.7 under strict sqlmod_Lou Shuai➥https://bugs.mysql.com/bug.php?id=82830
6、MySQL Server: Optimizer
Bug #100028 LIKE behavior is not same_Phoenix Zhang➥https://bugs.mysql.com/bug.php?id=100028
Bug #100800 wrong result when select int column with range_Lou Shuai➥https://bugs.mysql.com/bug.php?id=100800
Bug #100783 wrong result with hash join_Lou Shuai➥https://bugs.mysql.com/bug.php?id=100783
Bug #98718 explain anaylze select count(*) from mysql.user coredump under debug version_Lou Shuai➥https://bugs.mysql.com/bug.php?id=98718
Bug #68154 explain output 'Using index condition' not proper_Lou Shuai➥https://bugs.mysql.com/bug.php?id=68154
Bug #107969 wrong result when search binary columns_Lou Shuai➥https://bugs.mysql.com/bug.php?id=107969
Bug #110801 prepared stmt of setting sp_var from subselect leads crash when re-create table_Hao Lu➥https://bugs.mysql.com/bug.php?id=110801
7、MySQL Server: Partitions
Bug #101310 partition by key distribute unbalance for utf8_Phoenix Zhang➥https://bugs.mysql.com/bug.php?id=101310
8、MySQL Server: Options
Bug #101469 skip_name_resolve does not take effect_Phoenix Zhang➥https://bugs.mysql.com/bug.php?id=101469
9、MySQL Server: Information schema
Bug #99094 coredump when install information schema plugin_Lou Shuai➥https://bugs.mysql.com/bug.php?id=99094
10、Connector / C++
Bug #99093 mysql-connector-cpp cmake files not work well when as a third party_Lou Shuai➥https://bugs.mysql.com/bug.php?id=99093
11、MySQL Server: Query Cache
Bug #70032 Query cache works for partition table if there is a derived table_Lou Shuai➥https://bugs.mysql.com/bug.php?id=70032
12、MySQL Server: Security: Privileges
Bug #64532 columns_priv record not clear or modify when table defination changed_Lou Shuai➥https://bugs.mysql.com/bug.php?id=64532
Bug #104732 In the case of using the role, there is a problem with the acl check of the view_Deng Yl➥https://bugs.mysql.com/bug.php?id=104732
13、MySQL Server: Connection Handling
Bug #102669 incorrect comment in source code_Hao Lu➥https://bugs.mysql.com/bug.php?id=102669
14、MySQL Server: DML MySQL
Bug #104201 Wrong result when compare 'null' with subquery result_Deng Yl➥https://bugs.mysql.com/bug.php?id=104201
Bug #104250 kill query will case some mysql client block_Deng Yl➥https://bugs.mysql.com/bug.php?id=104250
Bug #99639 Wrong behavior between insert and insert...select_Roger Lei➥https://bugs.mysql.com/bug.php?id=99639
Bug #100053 Lost ULLONG_MAX value in table with type of bit(64)_Roger Lei➥https://bugs.mysql.com/bug.php?id=100053
15、MySQL Server: Performance Schema
Bug #93592 mysql crash got signal 6 ,free(): invalid next size (normal):_Lou Shuai➥https://bugs.mysql.com/bug.php?id=93592
16、MySQL Server: DDL
Bug #111770 group replication lost transaction when import tablespace failed_Gang Liu➥https://bugs.mysql.com/bug.php?id=111770
Bug #111888 'alter table xxx import tablespace' lead server crash_Gang Liu➥https://bugs.mysql.com/bug.php?id=111888
Bug #112049 changing implicit pk leads crash after restart_Hao Lu➥https://bugs.mysql.com/bug.php?id=112049
17、MySQL Server: Documentation
Bug #68177 innodb_log_file_size with wrong default value_Lou Shuai➥https://bugs.mysql.com/bug.php?id=68177
Bug #112001 Wrong Authorized User_Haoyuan Zhang➥https://bugs.mysql.com/bug.php?id=112001
版权声明: 本文为 InfoQ 作者【GreatSQL】的原创文章。
原文链接:【http://xie.infoq.cn/article/543d924417d88725f8aab5dee】。文章转载请联系作者。
评论