hartmut's blog

A <s>first</s> second look at InnoDB spatial indexes in the MySQL 5.7 april lab release ...

Warning: it turned out that I used a full debug build instead of a release one, and that seems to make a hell of a difference ... most numbers have been updated now, the old debug results and conclusions are still there but striked out (to document my own stupidity forever ;)

The MySQL 5.7 April Labs release comes with a preview of spatial indexes for InnoDB, something that I've heard rumours about for quite a while but so far couldn't find any kind of actual confirmation for. Spatial indexes for InnoDB would more or less get rid of the last MyISAM-only feature (after the addition of fulltext indexing to InnoDB in MySQL 5.6)

So it's about time to have a closer look at what has been brewing at "the cathedrals crypt" ...

MySQL/MariaDB autoconf macros

I've had my own set of autotool macros for building against different MySQL client and server APIs for quite a while. Originally created as part of my code generator projects (CodeGen_MySQL_UDF and CodeGen_MySQL_Plugin) I ended up having diverging copies in a few other projects, too (my and my autotools branch of ).

So I've finally taken the time to merge the differnet copies into a single standalone project on GitHUB.

Real world GIS test data

Ok, this took a bit longer than originally planned for, but if you want to test out recent MariaDB GIS improvements I now have finished importing OpenStreetMap data extracts for most countries in Europe (all but France actually):


Nasty InnoDB regression in MySQL 5.5.25

We just ran into a nasty InnoDB bug that only seems to exist in MySQL 5.5.25:

An InnoDB update that modifies a rows primary key can trigger some recursive behavior that creates new rows until all disk space is exceeded. This does not affect all primary key updates in general but only gets triggered when a few other conditions are also met, so you're not too likely to run into it, but if you do your mysqld server will waste a lot of IO bandwidth and storage space on this and will usually eventually run out of disk space.

Adding a case insensitive, distinct unicode collation

Every once in a while questions like the one in MySQL Bug #60843 or Bug #19567 come up:

What collation should i use if i want case insensitive behavior but also want all accented letter to be treated as distinct to their base letters?

or shorter, as the reporter of bug #60843 put it:

I need something like utf8_bin + ci

utf8_general_ci and utf8_unicode_ci unfortunately do not provide this behavior and utf8_bin is obviously not case insensitive.

Syndicate content