MariaDB Contribution Statistics, October 2024
Another quarter year has gone by, and in the world of MariaDB, it is time for another contributions report. The raw data for this report can be found on GitHub, here.
Server contributions
Just like last quarter, I’m going to start with a breakdown of all the organisations who have contributed to MariaDB Server so far this year.
Organisation | Contributors | Commits |
---|---|---|
MariaDB Plc | 29 | 1262 |
MariaDB Foundation | 6 | 123 |
Codership | 7 | 77 |
Independent | 17 | 57 |
Amazon | 12 | 50 |
Arch Linux | 1 | 6 |
GSoC | 3 | 5 |
IONOS | 1 | 4 |
Alibaba | 1 | 3 |
Rakuten | 1 | 3 |
HardenedBSD | 1 | 2 |
OpenBSD | 1 | 2 |
University of Sydney | 1 | 2 |
Arm | 1 | 1 |
Chainguard | 1 | 1 |
ClearCode | 1 | 1 |
FreeBSD | 1 | 1 |
IBM | 1 | 1 |
There have been some interesting things to note here. The first is that Google Summer of Code season has now ended. Some of the contributions from it have merged, and still quite a few that need a little bit of work before they are ready. Hopefully, more of these will be merged by the end of the year.
In addition, we have a MariaDB Foundation sponsor, IONOS, contributing code to us, which we are very happy to see. Along those lines, we have Rakuten who have been upstreaming some new features to us. Specifically, Rakuten have been working on improving the Oracle compatibility code. There is still at least one more PR from them which should be merged soon and potentially several more features in the pipeline that we are looking forward to.
The Connector/C project also had a contribution from a new contributor, ClickHouse. The project itself is owned by the MariaDB Plc rather than the Foundation, so we do not get to review these contributions, but it is great to see them come in.
From here, we can do a quick 2023 to 2024 comparison.
Organisation | Contributors Q3 2023 | Contributors Q3 2024 | Commits Q3 2023 | Commits Q3 2024 |
---|---|---|---|---|
MariaDB Plc | 30 | 29 | 1213 | 1262 |
MariaDB Foundation | 7 | 6 | 176 | 123 |
Other | 51 | 51 | 160 | 216 |
TOTAL | 88 | 86 | 1549 | 1601 |
There are some interesting things here. We have more external contributions than this time last year, which is fantastic. MariaDB Foundation has had fewer commits, this is actually to be expected. The Foundation has been working on some big features that have not been merged yet. It all equates to a slight net increase in commits with a slightly fewer contributors.
Statistics by lines of code
As a bonus, I’ve also generated the statistics on lines of code. The data is recorded as lines “added” and “removed”. It is difficult to see a “changed” statistic, but you could get a rough estimate by taking the “removed” lines away from the “added” lines. We have had 215,403 lines added and 142,297 lines removed so far. Therefore under the above assumption, we have 73,106 truly new lines of code and 142,297 changed so far this year.
Organisation | Percentage of Lines Added | Percentage of Lines Removed |
---|---|---|
MariaDB Plc | 86.5% | 90.5% |
MariaDB Foundation | 5.0% | 5.9% |
Codership | 3.3% | 1.2% |
Amazon | 1.3% | 1.5% |
Other | 3.9% | 1.0% |
I have taken the top four organisations and grouped everyone else under “Other”. From the percentages, you can see that Plc is even higher than the number of commits, with 86.5% of “new” LoC and 90.5% of the deleted.
As for Codership, the relatively high ratio of “new” lines of code caught my eye. It seems to be due to adding lots of test cases with their changes, which is a welcome thing.
Pull requests
Next up, let’s take a look at the state of pull requests. The columns are:
- New PRs: The number of PRs that have been opened that week.
- Draft PRs: Of the newly opened PRs that week, how many are currently drafts.
- Closed PRs: The number of PRs that have been closed that week (not merged).
- Merged PRs: The number of PRs that have been merged that week.
- Total PRs: The total number of PRs we have had up to the end of that week.
- Still Open PRs: The total number of PRs still open (including draft) at the end of that week.
- Days to First Response: The average number of days to first meaningful response of PRs for PRs that have been responded, for the PRs opened that week.
- New PRs Responded: The total number of PRs that have had a meaningful response that have been opened that week.
- PRs Self Merge No Review: The number of PRs opened that week which have been merged by the author with no review from anyone else in the MariaDB team.
- PRs Self Closed No Review: The number of PRs opened that week which have had no meaningful response and have been closed by the author.
Week Ending | New PRs | Draft PRs | Closed PRs | Merged PRs | Total PRs | Still Open PRs |
---|---|---|---|---|---|---|
2024-07-07 | 12 | 1 | 1 | 8 | 3376 | 247 |
2024-07-14 | 11 | 0 | 4 | 14 | 3387 | 240 |
2024-07-21 | 9 | 0 | 8 | 17 | 3396 | 224 |
2024-07-28 | 21 | 1 | 3 | 6 | 3417 | 236 |
2024-08-04 | 21 | 0 | 9 | 15 | 3438 | 233 |
2024-08-11 | 3 | 0 | 5 | 5 | 3441 | 231 |
2024-08-18 | 16 | 0 | 3 | 6 | 3457 | 238 |
2024-08-25 | 15 | 0 | 2 | 8 | 3466 | 237 |
2024-09-01 | 10 | 1 | 11 | 8 | 3481 | 233 |
2024-09-08 | 17 | 1 | 4 | 7 | 3491 | 232 |
2024-09-15 | 21 | 0 | 2 | 10 | 3508 | 237 |
2024-09-22 | 16 | 0 | 3 | 4 | 3529 | 251 |
2024-09-29 | 8 | 0 | 5 | 10 | 3545 | 252 |
Week Ending | Days to First Response | New PRs Responded | New PRs Not Responded | PRs Self Merge No Review | PRs Self Closed No Review |
---|---|---|---|---|---|
2024-07-07 | 12.5 | 2 | 3 | 6 | 0 |
2024-07-14 | 24 | 2 | 5 | 3 | 1 |
2024-07-21 | 17.2 | 5 | 3 | 1 | 0 |
2024-07-28 | 13.7 | 6 | 8 | 6 | 0 |
2024-08-04 | 6.6 | 7 | 3 | 10 | 1 |
2024-08-11 | NA | 2 | 2 | 1 | 0 |
2024-08-18 | 0 | 3 | 9 | 3 | 1 |
2024-08-25 | 0 | 2 | 4 | 1 | 2 |
2024-09-01 | 11.7 | 3 | 6 | 4 | 1 |
2024-09-08 | 24.3 | 3 | 4 | 2 | 0 |
2024-09-15 | 8.7 | 6 | 5 | 6 | 0 |
2024-09-22 | 4.1 | 12 | 5 | 3 | 1 |
2024-09-29 | 2.3 | 6 | 5 | 5 | 0 |
There are some interesting things in this data as well. The week ending 2024-08-11 had 3 new PRs, the lowest of the year. None of these PRs have had a response, one was self-merged without a public review. This means for the first time ever we have an “NA” in the “Days to first response”. In addition, we are ending the quarter on 252 open pull requests. This is the highest it has ever been, we started the year at 205 open pull requests. I will say that the first week of Q4 saw this number drop to 242 open pull requests, so the count will hopefully trend downwards.
Next Time
If there are any additions you would like to see, please let us know. Otherwise, we’ll be back in early next year with even more metrics!
Featured image: by Anita Peeples used under a CC0 license.