Bzr and launchpad tricks: firefox plugin

If you work with bazaar, you have seen its URIs. You can find the complete list is in the bzr help urlspec. Although I commonly use only a subset of that, like bzr+ssh://bazaar.launchpad.net/~maria-captains/maria/5.2-serg/ and http://bazaar.launchpad.net/%2Bbranch/mysql-server/5.5/.

In addition I often use Launchpad aliases, such as lp:~maria-captains/maria/5.3-serg/, lp:maria/5.3, and lp:869001.

And finally, there are common abbreviations that we have used in MySQL, and others that we use in MariaDB, for example bug#12345 and wl#90.

What’s annoying, I need to remember that wl#90 corresponds to http://askmonty.org/worklog/?tid=90 and type the latter in the location bar of the browser, when I want to look this task up. And lp:869001 is, for my browser, https://bugs.launchpad.net/bugs/869001. Similarly, every other URL above, has its browser-friendly evil twin. It’s evil, because I have to remember it!

Now, Firefox tries to help, to a certain extent. It supports so-called keywords — short aliases for bookmarks. Create a bookmark for https://bugs.launchpad.net/bugs/%s and in the Keyword field enter lp. Now you can type in the location bar lp 869001 (with a space) and Firefox will expand it into a complete url https://bugs.launchpad.net/bugs/869001. Quite handy. And I’ve used it for a few years. Still it annoyed me, that I had to rewrite the abbreviations manually, put spaces, remove colons, and so on. And at last it annoyed me to a degree where I wrote a Firefox plugin!
Continue reading

bash completion for mysql-test-run

For many years I was using tcsh, with lots of useful customizations, that were created during these years. Now I have bash on my laptop and slowly adding what I’ve got used to.

Yesterday I’ve created command line completion rules for mysql-test-run. It’s not a complete set of everything that’s possible, still it’s quite useful as it is. I need to type much less now when invoking mysql-test-run (and I invoke it quite a lot).
Continue reading

Setting up a new MariaDB Buildbot host

Yesterday I set up a new machine for our MariaDB Buildbot. This is quite an important build host for us, it runs more than 20 different builds for each push into our most important trees, and is the host that builds most of our release packages. So quite a workhorse! It is a pretty fast machine, with 5 SSD disks, 48GB of RAM and 2 x quad-core Intel Xeon E5420.

This is a replacement for the previous machine serving the same builds. The previous machine was also nice, at least on paper, with no less than 24 cores. Unfortunately we were never able to run that machine stably, it would crash/hang every few days requiring manual power cycling, which was unacceptable, of course.

The new host has been running for a day or so and seems to work well, hopefully it will prove to be more stable. I wanted to do a quick comparison of the speed of builds on the new host compared to the old:

Overall, the new builder looks about the same speed as the old one, maybe a bit faster even. Which is quite nice, given that the old one has three times the number of cores. The windows build is though significantly faster. This is probably because it turns out this is quite I/O heavy for some reason, and the new host, having SSD for storage, has significantly better I/O performance.

Şerefe! – The MariaDB Knowledge Base in Istanbul

Monty Program along with various guests and our friends at the recently founded SkySQL recently wrapped up a meeting in Istanbul Turkey. Sadly it rained most days but we had a good time and got a lot done.

Besides learning how to say “Şerefe” which is “Cheers” in Turkish, we discussed the future of MariaDB, our companies goals, the MariaDB knowledge base and many other topics. Since I am the web guy, I lead the presentation / talk on the KB and thought I would share some highpoints of it with you.

If you don’t know, the KB is located at http://kb.askmonty.org. The goal is to provide one location for MariaDB and MySQL documentation along with a place to ask questions (and have developers actually answer them). To start we have both information licensed under the GPL about MySQL, content from the “SQL-99 Complete, Really” book (still in the progress of adding the whole thing) and original articles by Daniel, Monty and others.

We want anyone to be able to create new articles, clean up existing content and categorize them but for the moment only editors can. This is a limitation in our permissions system that I will be addressing shortly. I also am in the planning stages of allowing all content to be translated into multiple language. If you would like to volunteer, keep reading this blog and I will let you know when it is ready.

The KB is written in python (Django) running against MariaDB. I wrote it over the course of several months using many Django libraries. Let me know any comments or questions you might have.

5.2.2 is around the corner

I’ve just pushed the last batch of changes into 5.2 tree. The most important change was renaming Maria engine to Aria (with old maria* compatibility variables). Other — smaller — changes included adding all plugins to the windows .zip distribution (sphinx and oqgraph too), building mysqld.exe with federatedx, not old federated engine, refactoring of mysql-test-run suite to support pluggable per-suite extensions, print the plugin configuration in the ./configure script, and other even smaller changes. Together with all bug fixes that 5.2 has accumulated over time it made the tree ready for the next release – 5.2.2!