A brief update on NUMA and MySQL
Some time ago, I wrote a rather popular post The MySQL “swap insanity” problem and the effects of the NUMA architecture (if you haven’t read it, stop now and do that!), which described using numactl...
View ArticleOn learning InnoDB: A journey to the core
I’ve been using InnoDB for about a decade now, and up to now have understood it well enough to make it do what I wanted, most of the time. However in order to achieve some goals related to efficiency,...
View ArticleA quick introduction to innodb_ruby
In On learning InnoDB: A journey to the core I introduced a new library and command-line tool in the innodb_ruby project. Now I’ll show off a few of the things it can do. I won’t try to explain all of...
View ArticleThe basics of InnoDB space file layout
In On learning InnoDB: A journey to the core, I introduced the innodb_diagrams project to document the InnoDB internals, which provides the diagrams used in this post. InnoDB’s data storage model uses...
View ArticlePage management in InnoDB space files
In On learning InnoDB: A journey to the core, I introduced the innodb_diagrams project to document the InnoDB internals, which provides the diagrams used in this post. (Note that each image below is...
View ArticleExploring InnoDB page management with innodb_ruby
In On learning InnoDB: A journey to the core I introduced a new library and command-line tool in the innodb_ruby project. Later on in A quick introduction to innodb_ruby I walked through installation...
View ArticleThe physical structure of InnoDB index pages
In On learning InnoDB: A journey to the core, I introduced the innodb_diagrams project to document the InnoDB internals, which provides the diagrams used in this post. (Note that each image below is...
View ArticleB+Tree index structures in InnoDB
In On learning InnoDB: A journey to the core, I introduced the innodb_diagrams project to document the InnoDB internals, which provides the diagrams used in this post. Later on in A quick introduction...
View ArticleThe physical structure of records in InnoDB
In On learning InnoDB: A journey to the core, I introduced the innodb_diagrams project to document the InnoDB internals, which provides the diagrams used in this post. Later on in A quick introduction...
View ArticleEfficiently traversing InnoDB B+Trees with the page directory
In On learning InnoDB: A journey to the core, I introduced the innodb_diagrams project to document the InnoDB internals, which provides the diagrams used in this post. Later on in A quick introduction...
View ArticleHow InnoDB accidentally reserved only 1 bit for table format
The MySQL 5.5 (and 5.6) documentation says, in Identifying the File Format in Use: “… Otherwise, the least significant bit should be set in the tablespace flags, and the file format identifier is...
View ArticleRegression in MySQL server localization from 5.0 to 5.6
MySQL server has supported localization of error messages since the very beginning, and its implementation has gone through a few revisions: Through 4.1, a separate language/errmsg.txt file for each...
View ArticleIdea: A “system” localization for MySQL
Currently the English error messages are embedded in all of the tests in MySQL. This means that you can’t really update the English translations without breaking a bunch of tests. I’m not sure if...
View ArticleInnoDB bugs found during research on InnoDB data storage
During the process of researching InnoDB’s storage formats and building the innodb_ruby and innodb_diagrams projects discussed in my series of InnoDB blog posts, Davi Arnaut and I found a number of...
View ArticleJulian Cash “white background” community photos at Percona Live MySQL Conference
You might have noticed from my profile picture on this blog, as well as on Facebook, Twitter, etc., that I am a fan of Julian Cash‘s photography. If you’re in the MySQL community, you almost certainly...
View ArticleInnoDB: A journey to the core: At the MySQL Conference
Next week is the Percona Live MySQL Conference and Expo 2013. Davi Arnaut and I are co-presenting InnoDB: A journey to the core, based on my InnoDB blog series by the same name. We will (fairly...
View ArticleMySQL Community Contributor of the Year 2013
First of all, thank you to everyone who nominated me, voted for me, and to those of you who shared kind words with me and congratulated me. It’s humbling to have been awarded one of the “MySQL...
View ArticleHow does InnoDB behave without a Primary Key?
This afternoon, Arjen Lentz and I were discussing InnoDB’s behavior without a declared PRIMARY KEY, and the topic felt interesting enough and undocumented enough to warrant its own short post....
View ArticleInnoDB Tidbit: The doublewrite buffer wastes 32 pages (512 KiB)
In my ongoing quest to completely understand InnoDB’s data storage, I came across a quite small and inconsequential waste, which is nevertheless fun to write about. I noticed the following block of...
View ArticleSpeaking at this year’s MySQL conference
For this year’s Percona Live: MySQL Conference and Expo 2014 (PLMCE), Davi Arnaut and I submitted a couple of co-speaking sessions proposals, both of which were accepted. Please come and see us and...
View Article