Google Summer of Code 2017
We would like to participate in the Google Summer of Code 2017 (as we have participated in previous years). The MariaDB Foundation believes we are making a better database that remains application compatible with MySQL. We also work on making LGPL connectors (currently C, ODBC, Java) and on MariaDB Galera Cluster, which allows you to scale your reads & writes. Lately, we also have MariaDB ColumnsStore, which is a columnar storage engine, designed to process petabytes of data with real-time response to analytical queries.
Contents
Where to start
Please join us at irc.freenode.net
at #maria to mingle with the community. Don't forget to subscribe to maria-developers@lists.launchpad.net (this is the main list where we discuss development).
List of tasks
The complete list of tasks suggested for GSoC 2017 is located in the MariaDB Jira. A subset is listed below.
Support for GTID in mysqlbinlog
The mysqlbinlog tool needs to be updated to understand the replication feature called Global Transaction IDs (GTIDs) in MariaDB 10. The current version does not support GTIDs and the MySQL variant does not speak MariaDB 10's GTIDs.
Details: | MDEV-4989 |
---|---|
Skills: | C/C++ |
Mentor: | |
Students Interested: |
Automatic provisioning of slave
The purpose of this task is to create an easy-to-use facility for setting up a new MariaDB replication slave.
Details: | MDEV-7502 |
---|---|
Skills: | C/C++ |
Mentor: | |
Students Interested: |
GIS enhancements
GIS enhancements for 10.1 that we want to work on include adding support for altitude (the third coordinate), converters (eg. ST_GeomFromGeoJSON - ST_AsGeoJSON, ST_GeomFromKML - ST_AsKML, etc.), Getting data from SHP format (shp2sql convertor), as well as making sure we are fully OpenGIS compliant.
Details: | MDEV-5813 |
---|---|
Skills: | C/C++ |
Mentor: | Holyfoot |
Students Interested: |
Use table check constraints in optimizer
Taking into account the information about CHECK constraints can be a powerful tool to optimize queries. Check constraints can be propagated over equalities and create better smaller ranges.
Details: | MDEV-11107 |
---|---|
Skills: | C/C++ |
Mentor: | Sergei Petrunia, Igor Babaev |
Students Interested: |
Allow multiple alternative authentication methods for the same user
Currently one can specify only one authentication method per user. It would make a lot of sense to support multiple authentication methods per user. PAM-style. For example, one may want to authenticate using unix_socket when connecting locally, but ask for a password if connecting remotely or if unix_socket authentication failed.
Details: | MDEV-11340 |
---|---|
Skills: | C/C++ |
Mentor: | Sergei Golubchik |
Students Interested: |
Table functions (aka SQL functions returning tables)
The task is to implement support for SQL-invoked functions that return not a scalar value, but table.
Details: | MDEV-8100 |
---|---|
Skills: | C/C++ |
Mentor: | Sergei Petrunia, Sergei Golubchik |
Students Interested: |
Cassandra Storage Engine V2
Current Cassandra Storage Engine was developed against Cassandra 1.1 and it uses Thrift API to communicate with Cassandra. However, starting from Cassandra 1.2, the preferred way to access Cassandra database is use CQL (Cassandra Query Language) and DataStax C++ Driver (https://github.com/datastax/cpp-driver). Thrift-based access is deprecated and places heavy constraints on the schema.
This task is about re-implementing Cassandra Storage Engine using DataStax C++ Driver and CQL.
Details: | MDEV-8947 |
---|---|
Skills: | C/C++ |
Mentor: | Sergei Petrunia |
Students Interested: |
Suggest a task
Do you have an idea of your own, not listed above or in Jira? Do let us know!