MySQLconf impressions 3: Report from Storage Engine Summit 2010
For the Friday after the MySQL conference, Oracle had invited all storage engines to the traditional storage engine summit, but this was then canceled (or postponed) in the last minute. Since the engine vendors had already booked the day anyway, we agreed to sponsor the facility so the meeting could take place. In addition to those who had planned to be there, the meeting was also attended by Mikael Ronström, Jonas Oreland and Sanja Byelkin who had their flights cancelled. (Oracle was already represented by Konstantin Osipov.)
Also see http://askmonty.org/wiki/Storage_Engine_Summit_2010 for more complete notes of the summit.
- The engine vendors were interested in the opportunity opened by MariaDB being more inclusive than MySQL, meaning they can have their engines included in MariaDB if they want. (Using a GPL compatible license, of course.)
- We presented extending CREATE TABLE options newly finished by Sanja. This simple feature was very well received. Ron Hu from ScaleDB also immediately surfaced the need to coordinate engine specific options so that similarly named options will have the same semantics and effects in all engines. A wiki page in the MariaDB manual was created for this purpose.
- Sergei Golubchik presented the new Server Services for Plugins API, which allows the engine to check during runtime whether an API is support and which version of it is supported. This allows the plugin API to evolve, without the need to recompile all plugins against new header files.
- Igor and Timour presented optimizer related progress relevant to engines, in particular the plan to finish Query Fragment Pushdown, aka Join Condition Pushdown. (See notes for links to each worklog.)
- There was ample time also for free-form discussion, and related to the previous Jonas got a lot of questions on how MySQL Cluster (NDB) implemented their JOIN pushdown.
- Turns out that Antony Curtis (FederatedX) has been working on a merge of MySQL Cluster 6.3 and MariaDB 5.1. Since we so far had no official plans to work with MySQL Cluster, this will be interesting to follow.
- The major concern expressed by most engines was a fear that MariaDB and MySQL plugin api's will start diverging. This was seen as harmful and unfortunately the risk currently is real. Even if we have constructive and friendly talks with Oracle, this is the situation right now. The message from the engines was however quite clear, so we need to continue to think about solutions to this.
Btw, huge thanks to Sergei Golubchik for sending invitations and moderating this meeting, and Kristian Nielsen for excellent notes! (I was away for the afternoon to visit the Drizzle meeting, so the notes from Kristian are more complete, but this blog apparently captures the main discussion points anyway.)