Announcing the first MariaDB Hackathon – in India!

On the 24th – 25th October 2024 we will be hosting our first-ever Hackathon as part of our larger MariaDB Foundation presence around Open Source India.

What is a Hackathon?

If you have never done one before, it is basically a fun and challenging technology event where the goal is to create new things. Attendees are split into small teams of 5-10 people. An open source project is chosen to create and/or improve upon, and you have a day to work on it (and night as well if you really want to). On the second day, your team will need to give a presentation to show the work they have done.

MariaDB Foundation assisting multiple vendors

I recently helped two of our sponsors simultaneously, DBS Bank and MariaDB Plc, with a recent issue they were experiencing. This actually helped us add support for an extra cloud vendor. But before I tell the story, I first need to give a bit of background.

S3 Engine History

Back in 2019, we added the S3 engine to MariaDB Server. “S3” stands for “Simple Storage Service”, it was developed by Amazon, and it is pretty much the standard for storing objects (typically files) in the cloud. Almost every cloud vendor has their own object storage with an S3-compatible REST API.

Intel improving the performance of MariaDB Vector

As you have probably seen in earlier posts, the preview version of MariaDB Vector is out and ready for you to play with. We have had input from several different places during the development of this feature. This, of course, includes hardware manufacturers such as Intel.

In the background, Intel have been prototyping using AVX512 instructions for dot product and bloom filter. Both of these are functions are part of vector searches. If you haven’t heard of these terms, let me try and break them down.

AVX-512 – 512-bit extensions to the Intel Advanced Vector Extension

The AVX512 instructions themselves are CPU specific instructions that are designed to run calculations on large vectors of numbers simultaneously.

MariaDB Server is “main” by default

We recently had a public vote on whether “main” or a version branch should be the default. The results in favour of “main” were very clear. It has been just over a month, but behind the scenes we have been laying the groundwork for this to happen.

We think we are as ready as we can be, so with the opening of development for 11.7, we have switched to “main” as the default branch for MariaDB Server. This means that all new feature development should now target the “main” branch when contributing to MariaDB Server.

MariaDB Server GitHub branches: Moving to “main”

On the 3rd of July, two weeks ago, I created a poll to ask about the future of feature development branches in MariaDB Server. Specifically, whether we should switch to a rolling model which is more familiar to users of services such as GitHub.

The votes we received gave a very clear result. Today I will share the conclusions we drew, as well as setting expectations for what will happen next.

Recap: what is this “main” branch all about?

In a rolling model, there is one main branch of the tree that all the feature commits go into (typically called “main”), and this is then forked when it is time to prepare a major release.

MariaDB Contribution Statistics, July 2024

We are half way through the year! Where has the time gone?! This means that is time to talk contributions statistics. The raw data used for this blog post can be found on the metrics GitHub repo.

Server contributions so far

The following table contains the basic contribution stats for MariaDB Server in 2024 so far. We have contributions from almost twice as many non-MariaDB organisations as last quarter, which is fantastic to see. The more varied our contribution sources, the better.

OrganisationContributorsCommits
MariaDB Plc 29 923
MariaDB Foundation 6 64
Codership 6 48
Independent 13 41
Amazon 11 28
Arch Linux 1 6
GSoC 2 4
Alibaba 1 2
OpenBSD 1 2
University of Sydney 1 2
ARM 1 1
FreeBSD 1 1
IBM 1 1
Chainguard 1 1

MariaDB Server contributions for from 1st January 2024 – 2nd July 2024

Just like last time, we can almost do a like-for-like 2023 Q2 and 2024 Q2 comparison.

MariaDB Server GitHub branches: Have your say

Many countries in the world right now are hosting elections, in fact, my own country’s election is tomorrow. MariaDB Foundation is also asking for you to make one more vote on our own kind of referendum.

We have recently had a request by a member of the community to change how we use GitHub, in a way that, in-theory, will make things easier for community contributors. I’ll explain the current situation, the proposal and then the poll.

Current situation

At the moment, if you want to develop a new feature for MariaDB Server, it needs to be developed against the latest version branch, which is the default branch when you view on GitHub.

Start of Life for MariaDB 11.6

We normally announce releases and the end of life of releases, but today we are going to try something a little different, an announcement of “start of life”.

What does this mean?

The way we use GitHub is a little different to most projects. Instead of having a mainline and branching versions from that, MariaDB Server creates a new branch from the previous version. This is intended to happen shortly after the preview release of the previous version, but for various reasons it can come a little later. So by default, after the hypothetical version 11.7.0 is released, we will create the 11.8 branch in GitHub soon after.