Percona Resources

Software
Downloads

All of Percona’s open source software products, in one place, to download as much or as little as you need.

Valkey Contribution

Product Documentation

Why Percona for MongoDB?

Why Percona for PostgreSQL?

Percona Blog

Percona Blog

Our popular knowledge center for all Percona products and all related topics.

Community

Percona Community Hub

A place to stay in touch with the open-source community

Events

Percona Events Hub

See all of Percona’s upcoming events and view materials like webinars and forums from past events

About

About Percona

Percona is an open source database software, support, and services company that helps make databases and applications run better.

Percona in the News

See Percona’s recent news coverage, press releases and industry recognition for our open source software and support.

Our Customers

Our Partners

Careers

Contact Us

Vadim Tkachenko
Vadim Tkachenko co-founded Percona in 2006 and serves as its Chief Technology Officer. Vadim leads Percona Labs, which focuses on technology research and performance evaluations of Percona’s and third-party products. Vadim’s expertise in LAMP performance and multi-threaded programming help optimize MySQL and InnoDB internals to take full advantage of modern hardware. He also co-authored the book High Performance MySQL: Optimization, Backups, and Replication 3rd Edition.

Linux schedulers in tpcc like benchmark

I mentioned earlier that IO scheduler CFQ coming by default in RedHat / CentOS 5.x may be not so good for MySQL. And yesterday one customer reported that just changing cfq to noop solved their InnoDB IO problems. I ran tpcc scripts against XtraDB on our Dell PowerEdge R900 server (16 cores, 8 disks in […]

Another scalability fix in XtraDB

Recent scalability fixes in InnoDB and also Google’s and your SMP fixes almost made InnoDB results acceptable in primary key lookups queries, but secondary indexes were forgotten for some time. Now having Dell PowerEdge R900 on board (16CPU cores, 16GB RAM) I have some time for experiments, and I played with queries

5.0.75-build12 Percona binaries

After several important fixes to our patches we made binaries for build12. Fixes include: Control of InnoDB insert buffer to address problems Peter mentioned https://www.percona.com/blog/2009/01/13/some-little-known-facts-about-innodb-insert-buffer/, also check Bug 41811 to see symptoms of problem with Insert buffer. https://www.percona.com/docs/wiki/patches:innodb_io_patches * innodb_flush_neighbor_pages (default 1) – When the dirty page are flushed (written to datafile), this parameter determines […]

Fix of InnoDB/XtraDB scalability of rollback segment

Recently I wrote about InnoDB scalability on 24-core box, and we made research of scalability problems in sysbench write workload (benchmark emulates intensive insert/delete queries). By our results the problem is in concurrency on rollback segment, which by default is single and all transactions are serialized accessing to segment. Fortunately InnoDB internally has mechanism to […]

XtraDB/InnoDB CPU bound benchmarks on 24cores server

One of our customers gave me a chance to run some benchmarks on 24-core (intel cpu based) server, and I could not miss it and ran few CPU-bound tasks there. The goal of benchmarks was investigation of InnoDB-plugin and XtraDB scalability in CPU-bound load.

5.0.75-build11 percona binaries

As you may know Sun / MySQL made release of community 5.0.75 only as source code release. We made binaries with our patchset. Patches are mostly equal to build 10 https://www.percona.com/blog/2008/12/11/mysql-binaries-percona-build10/, only change: it includes bugfix for https://bugs.launchpad.net/percona-patches/+bug/308849 You can download binaries (RPMS x86_64) and sources with patches here https://www.percona.com/mysql/5.0.75-b11/

XtraDB in CPU-bound benchmark

Peter said me that previous results https://www.percona.com/blog/2008/12/18/xtradb-benchmarks-15x-gain/ are too marketing, and we should show other results also. Here is the run for CPU Bound,or it would be more correctly to say in-cache benchmark, because there is a lot of CPU remains idle. This run is exactly the same as Disk Bound but with innodb_buffer_pool_size=8G which […]

XtraDB benchmarks – 1.5X gain in IO-bound load

I guess it is first reaction on new storage engine – show me benefits. So there is benchmark I made on one our servers. It is Dell 2950 with 8CPU cores and RAID10 on 6 disks with BBU, and 32GB RAM on board with CentOS 5.2 as OS. This is quite typical server we recommend […]

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:

With both slow_query_log = OFF and userstat_running = OFF […]

Reading MySQL Enterprise future…

Well, actually it is not reading future, but just mysql-5.1.30.rhel4.spec file from MySQL RedHat 4 SRPM. I found there few MySQL Enterprise Editions, namely: MySQL Enterprise Server – Advanced Edition MySQL Enterprise Server – Pro Edition MySQL Enterprise Server – Classic Edition What is difference ? Let’s see. For MySQL Enterprise Server – Advanced Edition: […]

The patches are going to Launchpad

After some discussions on the OpenSQLCamp 2008 conference we decided to move our development to Launchpad, to be in stream with other MySQL related projects. We published our patches there https://code.launchpad.net/percona-patches, it is supposed to be main repository for the patches. We advise to use Launchpad bug system to report bugs and also for feature […]

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:

and -percona-highperf release additionaly includes

You can download RPMs for RedHat / CentOS 4.x and 5.x for x86_64, binaries, sources and patches there

More patches

After some pause we are going to announce bunch of patches we made and ported for last period. Ported patches (ported from Google V2 patch): – innodb_fsync_source.patch – Show information about callers of fsync, more info – innodb_io_tune.patch – Port of two patches InnodbIOTune and InnodbAsync, more info – innodb_extra_status.patch – Show more information about […]

Mirrored Binlogs patch

Google patches V1 contain interesting patch to mirror binary log on slave. Although Google is preparing GlobalTransactionId patch, which going to be replacement for MirroredBinlogs, we still think mirroring binary logs is very useful for: Backup of binary logs in real time High availability, to switch master load to slave with mirrored binary logs By […]

Improved InnoDB rw_lock patch

There is patch from Google to improve SMP performance , but for some workloads it showed for us reverse scalability. E.g. update_key benchmark from sysbench. There are also results with Yasufumi’s rw_locks (http://bugs.mysql.com/bug.php?id=26442)

Unused indexes by single query

Usually unused indexes are devil, they waste diskspace, cache, they make INSERT / DELETE / UPDATE operations slower and what makes them worse – it is hard to find them. But now ( with userstatsV2.patch) you can find all unused indexes (since last restart of mysqld) by single query

As you see query […]

Google’s user_statistics V2 port and changes

Recently Google published V2 release of patches, one of them user_statistics we use in our releases. New features are quite interesting so we decided to port it to fresh releases of MySQL. Features includes: New statistics per user (Cpu_time, Bytes_received, Bytes_sent, etc) New command SHOW CLIENT_STATISTICS, which shows statistics per client’s hostname, not per user […]