Future HailDB release planning

We’ve started to plan out the next couple of HailDB releases over on the HailDB Launchpad page. We’re looking at each release being small and incremental changes. The next release or two will help us make the release process nice and smooth as well as fixing a few small things.

We are a completely open project and encourage participation from everyone. Currently the best place for discussion would be the drizzle-discuss mailing list (It’ll be great when we have enough traffic to create a HailDB specific list).

Ubuntu packages of HailDB now available

In the haildb-core PPA over on launchpad. Thanks to Monty Taylor for packaging.

RPMs of HailDB now available!

Over at the Drizzle Wiki, there are instructions on how to add the Unofficial Fedora/RHEL repository to your installation and then you can install the HailDB package.

We hope to at some point soon also submit it to the official repository.

We’ll also have debs for Debian and Ubuntu shortly.

Switching to HailDB from Embedded InnoDB

HailDB is a project that aims to continue the Embedded InnoDB project. That is, provide the excellent, high quality and super reliable InnoDB database engine (as used in MySQL and Drizzle by millions of users all over the world) as a shared library to application developers. We just announced our first release!

We will shortly have packages for various distributions up, along with a source tarball.

It’s incredibly easy to switch to HailDB from Embedded InnoDB for your project. Just look for libhaildb instead of libinnodb and include “haildb.h” instead of “innodb.h”. The rest of the API is exactly the same.

HailDB 2.0.0 released!

We’ve made our first HailDB release! We’ve decided to make this a very conservative release. Fixing some minor bugs, getting a lot of compiler warnings fixed and start to make the name change in the source from Embedded InnoDB to HailDB.

Migrating your software to use HailDB is really simple. In fact, for this release, it shouldn’t take more than 5 minutes.

Highlights of this release:

  • A lot of compiler warnings have been fixed.
  • The build system is now pandora-build.
  • some small bugs have been fixed
  • Header file is now haildb.h instead of innodb.h
  • We display “HailDB” instead of “Embedded InnoDB”
  • Library name is libhaildb instead of libinnodb
  • It is probably binary compatible with the last Embedded InnoDB release, but we don’t have explicit tests for that, so YMMV.

Check out the Launchpad page on 2.0.0 and you can download the tarball either from there or right here:

  • haildb-2.0.0.tar.gz
    MD5:  183b81bfe2303aed435cdc8babf11d2b
    SHA1:  065e6a2f2cb2949efd7b8f3ed664bc1ac655cd75

Hudson build bot

We now have a Hudson job on hudson.drizzle.org for the HailDB trunk.

From here you can easily see our progress on compiler warnings, lines of code (as reported by sloccount) as well as warnings from cppcheck. At some point soon we’ll expand the platforms being tested as well.

We also hope to have the test suite integrated so that test results can be monitored over time.

Launching HailDB

HailDB is a relational database that is embeddable within applications. You embed HailDB by linking to a shared library and calling a clean and simple API. HailDB is a continuation of the Embedded InnoDB project. It is not itself a database server, but is a library implementing the storage layer. With the addition of the HailDB plugin to Drizzle you get a full SQL interface.

Q: Why name it HailDB?

A: Hail comes from clouds.

Q: No, really?

A: Hail is solid. (we also wish to have some distinction from InnoDB and avoid any even remote possibility of trademark issues).

Q: Why exist at all?

A: InnoDB development is currently a rather closed process with code only seeing the outside world every 4 to 7 months. We work on a much faster schedule and want to be able to incorporate fixes and use them in Drizzle on a much shorter timeframe.

Q: Are HailDB changes going back to Embedded InnoDB?

A: It is not in our interest to diverge a lot from the upstream project as that creates more work for us.

Q: Is this a reaction to Embedded InnoDB being “under review” and lagging behind InnoDB Plugin ?

A: Partly.

Q: Does the InnoDB team know that we’re doing this?

A: Yes, we’ve spoken to some people on the InnoDB team at Oracle.

Q: Are you compiling with all compiler warnings?

A: We use pandora-build, and get all compiler warnings. There are a lot of them.

Q: What are your plans?

A: In the short term we see improvements in the performance and capability of the Embedded InnoDB API, improvements in the build system, integration of XtraBackup and packaging.

We are working on a Storage Engine for Drizzle that speaks the HailDB API. This will be as performant and featureful as the current Innobase plugin in Drizzle.

Q: Where can I get it?

A: Development is done through HailDB on Launchpad.

Q: Is it a company?

No. It’s a free and open source software project