On Thu, Dec 12, 2024 at 10:43 PM Kazuhiko via discuss <discuss@lists.mariadb.org> wrote:
Here is the summary for history length issue: (RC = READ COMMITTED, RR = REPEATABLE READ)
Good * 10.4, RR only with innodb_locks_unsafe_for_binlog * 10.4, RC for DML, RR for DQL * 10.5, RC only
Bad * 10.5, RC for DML, RR for DQL * 11.4, RC for DML, RR for DQL
Could you please also test the recent 10.6.20 release? It includes some performance improvements to the InnoDB undo log subsystem that were not applied to the 10.5 series, most recently MDEV-34515. The 11.4 series could suffer from other performance anomalies. At least one contention point around log_sys.mutex was removed thanks to the new ib_logfile0 format in 10.8. Sometimes, removing a contention point may make some other contention point prominent for a particular workload. It's a bit hard to imagine that log_sys.mutex might have acted as a useful "throttle" for something, like the parameters that were deprecated and disabled in https://jira.mariadb.org/browse/MDEV-23379, but I have seen that everything is possible. In case you are running on NUMA hardware, it might be worth trying to bind the mariadbd process to a single NUMA node in order to avoid cross-NUMA traffic. In some workloads, going from 2 NUMA nodes to 1 can double the throughput. I have tried to improve our NUMA performance (any reduction of mutex contention should help with that), but the high-level design is really targeting SMP, not being NUMA friendly. With best regards, Marko -- Marko Mäkelä, Lead Developer InnoDB MariaDB plc