Around month ago Facebook has announced the Linkbench benchmark that models the social graph OLTP workload. Sources, along with a very nice description of how to setup and run this benchmark, can be found here. We decided to run this benchmark for MySQL Server 5.5.30, 5.6.11 and Percona Server 5.5.30 and check how these servers [...]
Helgrinding MySQL with InnoDB for Synchronisation Errors, Fun and Profit
It is no secret that bugs related to multithreading–deadlocks, data races, starvations etc–have a big impact on application’s stability and are at the same time hard to find due to their nondeterministic nature. Any tool that makes finding such bugs easier, preferably before anybody is aware of their existence, is very welcome.
InnoDB compression woes
InnoDB compression is getting some traction, and I see quite contradictory opinions. Someone has successful deployments in productions, and someone says that compression in current implementation is useless. To get some initial impression about performance I decided to run some sysbench with multi-tables benchmarks. I actually was preparing to do complex research, but even first [...]
XtraDB: The Top 10 enhancements
Note: This post is part 2 of 4 on building our training workshop. Last week I talked about why you don’t want to shard. This week I’m following up with the top 10 enhancements that XtraDB has over the built-in InnoDB included in MySQL 5.0 and 5.1. Building this list was not really a scientific [...]
5.0.83-build17 Percona binaries
Dear Community, The build 17 of MySQL with Percona patches is available. New features in the release: MySQL-5.0.83 is taken as the basis The new patch innodb_use_sys_malloc.patch is added The new patch innodb_split_buf_pool_mutex.patch is added This patch splits the single global InnoDB buffer pool mutex into several mutexes for different purposes. This reduces mutex contention. [...]
MySQL Binaries Percona build10
We made new binaries for MySQL 5.0.67 build 10 which include next fixes: We addressed concerns about potential logging and statistics overhead, so now you can fully turn on / off query statistics for microslow patch and user statistics in runtime. Next variables were added:
1 2 3 4 5 6 | | slow_query_log | ON | | slow_query_log_file | /var/lib/mysql/slow_query.log | for compatibility with MySQL 5.1 and | userstat_running | OFF | to control gathering of user statistics. |
With both slow_query_log = OFF and userstat_running = OFF [...]
Percona build7 with latest patches
We made new binaries for MySQL 5.0.67 build 7 which include patches we recently announced. The -percona release includes:
1 2 3 4 5 6 7 8 9 10 11 12 | | innodb_check_defrag.patch | Session status to check fragmentation of the last InnoDB scan | 1.0 | Percona <info@percona.com> | GPL | The names are Innodb_scan_* | | userstatsv2.patch | SHOW USER/TABLE/INDEX statistics | V2 | Google | GPL | Added INFORMATION_SCHEMA.*_STATISTICS | | show_patches.patch | SHOW PATCHES | 1.0 | Jeremy Cole | N/A | | | innodb_io_patches.patch | Cluster of past InnoDB IO patches | 1.0 | Percona | GPL | This patch contains fixed (control_flush_and_merge_and_read, control_io-threads, adaptive_flush) | | innodb_show_hashed_memory.patch | Adds additional information of InnoDB internal hash table memories in SHOW INNODB STATUS | 1.0 | Percona <info@percona.com> | GPL | | | innodb_io_pattern.patch | Information schema table of InnoDB IO counts for each datafile pages | 1.0 | Percona <info@percona.com> | GPL | INFORMATION_SCHEMA.INNODB_IO_PATTERN | | microsec_process.patch | Adds INFOMATION_SCHEMA.PROCESSLIST with TIME_MS column | 1.0 | Percona <info@percona.com> | GPL | | | innodb_locks_held.patch | Add locks held, remove locked records in SHOW INNODB STATUS | 1.0 | Baron Schwartz <baron@xaprb.com> | GPL | Bug #29126 fix | | microslow_innodb.patch | Extended statistics in slow.log | 1.1 | Percona <info@percona.com> | GPL | | | mysqld_safe_syslog.patch | Patch allows redirect output of error.log to syslog-ng | 1.0 | Percona <info@percona.com> | GPL | Ported from Debian | | innodb_fsync_source.patch | Information of fsync callers in InnoDB | 1.0 | Google | GPL | | | innodb_show_bp.patch | show innodb buffer pool content | 1.0 | Percona <info@percona.com> | GPL | | |
and -percona-highperf release additionaly includes
1 2 | | split_buf_pool_mutex_fixed_optimistic_safe.patch | InnoDB patch to fix buffer pool scalability | 1.0 | Yasufumi Kinoshita | BSD | | | innodb_rw_lock.patch | Fix of InnoDB rw_locks | 1.0 | Yasufumi Kinoshita | BSD | |
You can download RPMs for RedHat / CentOS 4.x and 5.x for x86_64, binaries, sources and patches there
The performance effects of new patches
We are going to show the effects of the new patches applied to Percona HighPerf release. As you see from the following graphs, there is significant difference to normal version when the data bigger than buffer pool (right graph shows CPU usage)
New patches, new builds
We made new patches, improved previous and want to announce new builds for 5.0.62, 5.0.67 and 5.1.26 versions. One of biggest changes we separated releases of 5.0 into two branches. First, just “-percona” release is more stable and contains only stable and proven on many installation patches. Second is “-percona-highperf” release, which contains experimental patches [...]

