Making WiFi Great Again

TL;DR: Ubiquity UniFi gear is awesome!

When I moved into my current house one of the bigger technical challenges has been to get WiFi that works throughout my house reliably. Since we can only get regular phone lines here I’m on a VDSL2 internet connection which runs at 80/20mbit. The problem is this comes in via my office which is in the corner of the house. My kids bedrooms are in the opposite corner of the house so getting WiFi to reach that far becomes a technical challenge.

Continue reading Making WiFi Great Again

MariaDB source visualisation with Gource

Gource is a tool which can take a source code tree and create beautiful visualisations out of it. I’ve used it a few times before for various projects. This weekend I spent a little bit of time playing with it and applying it to MairaDB Server to see what it would produce.

The end result can be seen on YouTube.

Continue reading MariaDB source visualisation with Gource

One week with KDE Plasma

My go-to Linux distribution when I’m setting up my workstations is Fedora. I have been using it since Fedora Core 1 and RedHat 9 before that. I can’t even remember what RedHat version I started with now. I often try other distributions out and sometimes use them for a few months but I always end up jumping back to Fedora.

Fedora defaults to the Gnome desktop environment so I have used Gnome as my primary desktop environment for many years. Again I’ve tried others such as Cinnamon and XFCE but I always end up back in Gnome. In recent months I’ve heard a lot of good things about KDE Plasma so I thought I would give it a shot for a week. This is a report of my findings.

Continue reading One week with KDE Plasma

Coding and decoding crash dump handlers

All software has bugs. Even if you could possibly write the perfect bug free software all the layers down have bugs. Even CPUs as can be seen with the recent Meltdown and Spectre bugs. This means unfortunately sometimes software will crash. When this happens it is useful to capture as much information as possible to try and stop it happening again.

One of the first things I did when coming back to work from the holiday break is code a new crash dump handler to be used in MariaDB ColumnStore. This will spit out a stack trace for the current thread into a file upon a crash. It is very useful for daemons to try and find the root cause of a problem without running through a debugger. Continue reading Coding and decoding crash dump handlers

Correcting MariaDB ColumnStore Benchmarks

With MariaDB ColumnStore 1.1 Beta now released I quickly checked Twitter today to see what the response so far has been. I noticed that someone had posted up a benchmark comparison of MariaDB ColumnStore against a couple of other databases with data that doesn’t quite add up.

Continue reading Correcting MariaDB ColumnStore Benchmarks

How MariaDB ColumnStore’s filenames work

Unlike most storage engines, MariaDB ColumnStore does not store its data files in the datadir. Instead these are stored in the Performance Modules in what appears to be a strange numbering system. In this post I will walk you through deciphering the number system.

If you are still using InfiniDB with MySQL, the system is exactly the same as outlined in this post, but the default path that the data is stored in will be a little different.

Continue reading How MariaDB ColumnStore’s filenames work