一、來自MySQL官方的感謝 在 2023-10-25 MySQL 官方發佈的 8.2 版本 Release Notes 中,GreatSQL 社區核心開發者 Richard Dang 和 Hao Lu ,分別收到了來自 MySQL 官方的貢獻感謝,與Amazon、Facebook(Meta)、Te ...
一、來自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
Enjoy GreatSQL