Suggested development

You are viewing an old version of this article. View the current version here.

If you want to contribute to MariaDB but have a doubt about what to work on, this page lists possible projects. The projects are picked to be

  • features that are considered to be needed/relevant (so, there will be interest to accept the code into MariaDB)
  • features that will not require the implementer to work in "difficult" parts of the code and/or make high-risk changes that could be rejected out of concern that they could destabilize the codebase

The list is by no means complete. If you have an idea, ask on mailing list/IRC.

Progress reporting for ALTER TABLE ... ADD INDEX

  • Description: MariaDB has support for progress reporting during DDL statements. In some scenarios, progress reporting actually works. In others (ALTER TABLE ... ADD INDEX being the most important of them) it has not been implemented. The task is to place progress reporting statements at appropriate places in the code, so that ALTER TABLE ... ADD INDEX provides some clues about which fraction of work it has done/has left. The progress reporting page has a section which gives clues what kind of statements will need to be inserted. Finding where to put them is left as an exercise for the implementer :)
  • Background required: C, C++
  • Mentors: Sergei Petrunia

plugin error reporting

  • Description: Implement an error reporting plugin service. It's a set of functions that allows plugins to have their own errmsg.sys files and write error messages to the error log or to the user. See http://forge.mysql.com/worklog/task.php?id=2940 for details.
  • Background required: C, C++
  • Mentors: Sergei Golubchik

regex enhancements

  • Description: MySQL and MariaDB use an old regex library, it works bytewise, and thus only supports one byte character sets. It needs to be replaced by a modern multi-byte character set aware regex library. Additionally a much requested REGEX_REPLACE function could be implemented.
  • Background required: C, C++
  • Mentors: Sergei Golubchik

extend perror to know about server errors

  • Description: The perror tool is used to print a text message corresponding to an error number. It has a hard-coded list of error numbers and error messages. It needs to be fixed to read errmsg.sys files, just like the server does.
  • Background required: C
  • Mentors: Sergei Golubchik

LDAP authentication plugin

  • Description: A MySQL/MariaDB authentication plugin that takes user credentials from LDAP.
  • Background required: C, good familiarity with LDAP
  • Mentors: Sergei Golubchik

MacOSX Installer

  • Description: To create a MacOSX installer for MariaDB. Make the build scripts work, and integrate it with BuildBot so we get automated MacOSX builds for MariaDB.
  • Background required: Knowledge of Apple toolchain, plus the GNU toolchain. PackageMaker knowledge useful, as is some Perl knowledge. Understanding shell scripting also.
  • Mentor: Colin Charles

Linux packages for distributions

  • Description: To create packages for all major distributions out there. This includes RPM specfiles that are relevant to say Fedora, OpenSUSE, etc. following their packaging guidelines; creating DEBs for Debian/Ubuntu following their packaging guidelines; port files for *BSD's, OSX, etc. The goal is to also work with other projects to become a maintainer of MariaDB in those various distributions.
  • Background required: Shell scripting, ability to be flexible, understanding Makefiles, other build systems, etc.
  • Mentor: Colin Charles

Comments

Comments loading...
Content reproduced on this site is the property of its respective owners, and this content is not reviewed in advance by MariaDB. The views, information and opinions expressed by this content do not necessarily represent those of MariaDB or any other party.