Category Archives: Contributions
In the previous article, we wrote, compiled, and tested our first custom data type for MariaDB using the Type_handler framework.
But currently, aside from allowing the use of its new name (MONEY) and listing it in the metadata, our new data type behaves exactly like a DOUBLE, the class it inherits from.
In this article, we will extend our data type just a bit by transforming the result into a VARCHAR and adding a currency sign to it: the dollar sign ($).
This is the expected result:
MariaDB [test]insert into t1 (amount) values (41578.4); …
Continue reading “Adding a New Data Type to MariaDB with Type_handler – Part 3”
After having discovered the Type_hander framework and learned how to build MariaDB Server from source, it’s time to code our first data type!
We will create a MariaDB plugin that registers a new MONEY type and instantiates a custom field object.
Our component won’t be exciting, but we want to understand how to use the framework and test it.
We want to prove that
- the plugin loads,
- the server sees the type hander,
- a MONEY column can create a Field_money object.
Everything else comes later.
…
Continue reading “Adding a New Data Type to MariaDB with Type_handler – Part 2”
This is the first part of the series about how to add a new data type to MariaDB using the Type_handler framework. A preliminary article has already been published to start the series; it covers how to set up your development environment and compile MariaDB Server: Adding a New Data Type to MariaDB with Type_handler – Part 0.
Understand Type_handler Before Writing Code
When you add a new type to MariaDB, you are not only adding a new SQL keyword. Historically, that kind of work required invasive changes across the parser, optimizer, protocol, replication, and type-conversion mechanisms.
…
Continue reading “Adding a New Data Type to MariaDB with Type_handler – Part 1”
Welcome to this new series about extending MariaDB. This series covers the addition of a new data type using the Type_handler.
The goal of the entire series is to create a new plugin data type MONEY to store and display amounts with currency.
Something like:
MariaDB [test]> select * from t1;
+—-+————-+
| id | amount |
+—-+————-+
| 1 | $2,000.00 |
| 2 | $100,000.56 |
+—-+————-+
2 rows in set (0.002 sec)
Of course, the ultimate goal is to teach how to add data types in MariaDB, and we expect to see how creative our community developers are!
…
Continue reading “Adding a New Data Type to MariaDB with Type_handler – Part 0”
One of the things I really like about open source is that a project is never only about the software.
Yes, code is important. Very important. But a project like MariaDB exists and grows because of people. People who contribute code, of course, but also people who help users, review bugs, write blog posts, speak at events, answer questions, test new features, build tools, and share knowledge with others.
This is exactly why I’m very happy to announce the MariaDB Foundation Sea Lion Champions program.
It’s a new initiative to recognize the people who help make the MariaDB ecosystem stronger.
…
Continue reading “Know a MariaDB champion? Submit a nomination”
I came across an excellent paper by the Linux Foundation. In it I find solid economical evidence for a very fundamental idea: contributions are the life-blood of an open source project.
Contributions in the broader sense (code, documentation, quality assurance, marketing, education, financial support) are central to every project. Open source or not. Giving users what they need and want is what makes any project appealing. It’s just that with open source, the cost to procuring these is not that directly attached to the actual use. So, there is a gap to cross between passive use and active participation.
…
I wanted to share with you all some statistics on the incoming community contributions for the MariaDB server in the last year or so. And some of my thoughts looking at the data.
I’ve been quietly working on scripting some of my daily routines using the github CLI and the Jira REST API. Thanks to a question by Anna, the visionary MariaDB Foundation CEO, I’ve also created some scripts to fetch and summarize statistics on the incoming community contributions pull requests.
A picture’s worth a thousand words. So here we go:
This depicts the community pull requests opened or closed each month (the top graph).
…
Continue reading “The Rising Tide of Community Contributions to MariaDB Server”
Inspired by my VERY long presentation on the topic at FOSDEM26 I thought I’d say a couple of words on how the contribution process works.
Contributing changes to MariaDB server is easy because it follows industry best practices: it’s using “normal” GitHub pull requests. Note that I’m working for the MariaDB Foundation. As such, “normal” for me is doing everything in the open, for everybody to see and participate. And all of the communication around the contribution (including the code review) is happening in that same pull request and is public. Until the intended end of the process: merging the pull request into the repository.
…
Continue reading “The MariaDB contribution process: a step by step guide.”