Yesterday InnoDB Plugin 1.0.4 was released by Innobase.
This version contains one of the most important performance fixes
- "Fix for broken group commit". After MySQL5.0, InnoDB breaks
group commit when using with binary log (or with other
transactional storage engines), even though setting
innodb_support_xa=0. This was really serious because fsync()
(called at transaction commit when setting
innodb_flush_log_at_trx_commit=1) is very expensive. The
initial bug report about this was submitted by Peter four
years ago. Last year David Lutz submitted a bug
report with his prototype patch. It is great news that this
bug fix has been finally implemented in the official InnoDB
release.
I did a simple benchmarking by …
As you might have seen Innodb Plugin 1.0.4 was released today. I am very excited to see this release which is released exactly 5 months after release of Innodb Plugin 1.0.3 (I honestly expected to see Innodb Plugin 1.0.4 to be released by MySQL Conference and Expo in April). This also is still "early adopter" version of a plugin which is a bit of disappointment as we can't wait for Innodb plugin to become stable/GA but considering number of improvements this is probably good thing.
We're also pleased to see some of Percona contributions made in this release (in modified form) while others were evaluated and given ideas for different implementations.
Among other changes I'm especially pleased with fixed …
[Read more]Today, we are announcing that we're ready to offer training for InnoDB and XtraDB in Santa Clara and San Francisco. The course was developed by Morgan Tocker with input from all our team - and covers a lot of the performance problems we run through in our consulting practice.
The Details:
14th Sept - Santa Clara
1 day intensive course
Cost: $300*
16th Sept - San Francisco
1 day intensive course
Cost: $300*
(* includes a copy of High Performance MySQL if you register before 31st Aug).
The delivery format:
Being only one day, we elected to deliver the course in a predominately lecture-format - but there will be a few opportunities to try examples. For more information see the …
[Read more]If you do not follow MariaDB development, I want to head up XtraDB has been commited to MariaDB server and will be included in binary releases of MariaDB (scheduled on end of August - September) as replacement of InnoDB storage engine. MariaDB will also include PBXT storage engine, Sphinx storage engine and few our non-InnoDB related patches (extended stats into slow-log)
Entry posted by Vadim | One comment
[Read more]The feature I announced some time ago http://www.mysqlperformanceblog.com/2009/06/08/impossible-possible-moving-innodb-tables-between-servers/ is now available in our latest releases of XtraBackup 0.8.1 and XtraDB-6.
Now I am going to show how to use it (the video will be also
available on percona.tv).
Let's take tpcc schema and running standard MySQL ® 5.0.83, and
assume we want to copy order_line table to different server. Note
I am going to do it online, no needs to lock or shutdown server.
To export table you need XtraBackup, and you can …
[Read more]It’s been just over three months since the April 2009 MySQL Users Conference and Expo. It took a while for the files to be processed, and then uploaded to www.technocation.org, and then I found out that the online streaming was not working properly. So I started playing with things, re-encoding some videos, updating the software, but to no avail.
Just as I was about to give up I got notification that Technocation, Inc. was accepted into YouTube’s not-for-profit program, which allows movies larger than 10 minutes to be uploaded and viewed advertisement-free.
So then I had to upload the videos to YouTube and add descriptions.
So with no *further* delay, here are all the videos from the 2009 MySQL Conference and 2009 MySQL Camp:
The brief description — just the playlists:
Conference …
One of the ways to import data into MySQL is using the LOAD DATA INFILE. It is a faster method than recovering from a dump, as it’s raw data instead of SQL sentences.
The import time depends on the table engine, for example, MyISAM can be 40 times faster than Innodb. Let’s benchmark this:
Preparation
I’m gonna make some benchmarking using MySQL 5.1.36 (64 bits MacOS X). I’ll need a big table, so I’ll take City from the World Database and create a huge table called “city_huge”:
CREATE TABLE city_huge LIKE CITY;
INSERT INTO city_huge
SELECT NULL, name, CountryCode, District, Population FROM city;
# Run this sentence 100 times,
# so city_huge table will be 100 times bigger than city.
# Tip: use a script, temporary table, stored procedure...
# or tell your monkey to do so.
SELECT COUNT(*) FROM …[Read more]
Sysbench is a open source product that enables you to perform various system benchmarks including databases. Drizzles performs regression testing of every trunk revision with a branched version of sysbench within Drizzle Automation.
A pending branch https://code.launchpad.net/~elambert/sysbench/trunk_drizzle_merge by Eric Lambert now enables side by side testing with MySQL and Drizzle. On a system running MySQL and Drizzle I was able install this sysbench branch with the following commands.
cd bzr bzr branch lp:~elambert/sysbench/trunk_drizzle_merge cd trunk_drizzle_merge/ ./autogen.sh ./configure make sudo make install
Running the default lua tests supplied required me to ensure …
[Read more]
By making PBMS transactional I have been able to greatly simplify
the engine interface making it much easier for engine builders to
build in support for PBMS. How much simpler is it? From the time
I decided to make InnoDB PBMS enabled to when I started the
rebuild of MySQL was less than half an hour!
The same way that I added PBMS support to InnoDB it can be added
directly to the MySQL server so that the PBMS engine will be used
for BLOB storage for all engines regardless of if they have been
enabled or not. PBMS support for drizzle will be provided via a
data filter plug-in which I have yet to write but will
soon.
To add PBMS support all you need to do is add the file
pbms_enabled.cc to your source code and add the following to your
handler code. I will use the InnoDB handler code as an
example:
File ha_innodb.cc:
[Read more]
#ifdef USE_PRAGMA_IMPLEMENTATION
#pragma …
Look at MySQL bug reports of course? Well actually I’m writing multiple blog posts, and I was confirming additional reference sources and links when I came across MySQL Bug #29847 - Large CPU usage of InnoDB crash recovery with a big buf pool.
Taking the time to actually read the information exchange I stumble upon.
[8 Jun 23:29] liz drachnik Hello Heikki - In order for us to continue the process of reviewing your contribution to MySQL - We need you to review and sign the Sun|MySQL contributor agreement (the "SCA") The process is explained here: http://forge.mysql.com/wiki/Sun_Contributor_Agreement Getting a signed/approved SCA on file will help us facilitate your contribution-- this one, and others in the future. Thank you ! Liz Drachnik - Program Manager - MySQL
Oops. Well it made me laugh out loud for so many reasons. First your talking to the …
[Read more]