Announcing MariaDB Community Server 11.7 GA with Vector Search and MariaDB Community Server 11.8 RC

MariaDB Community Server 11.7 is now generally available (GA), and 11.8 is available as a release candidate (RC)! Both reinforce our commitment to delivering rapid innovation to the community.
MariaDB Community 11.7 is now GA
The GA release of MariaDB Community Server 11.7 introduces vector search as its key feature. This includes a new VECTOR() data type, the ability to define an index for a vector, and new functions for converting and comparing vectors. We’ve published several blog posts explaining the concept of vector search and the advantages it can offer AI applications.
The new vector search capability is also available in MariaDB Enterprise Platform 11.4 as a tech preview release.
The existing SQL function UUID() can now be supplemented with the new SQL functions UUID_v4() and UUID_v7() to generate a UUID. Each of these functions uses a different generation method, and the optimal choice depends on the intended use case.
MariaDB Community Server 11.7 enhanced the System Versioned Tables feature. Users can now modify implicit fields that track timestamps and data validity periods to explicit fields using an ALTER TABLE statement. Previously, these implicit fields could only be made visible by explicitly including them in the CREATE TABLE statement.
This enhancement provides greater flexibility for managing and evolving table structures, particularly in scenarios where tracking data history and changes over time is crucial.
Stored functions can now return values of the ROW type, either explicitly specified or anchored. This enhancement improves compatibility with database vendors such as Oracle.
Learn more about MariaDB Community Server 11.7 in this blog post.
MariaDB Community Server 11.8 Release Candidate
MariaDB Community Server 11.8, scheduled to release in May, is focused on resolving technical debt and conducting internal cleanups. MariaDB Community Server 11.8 will be an LTS or long term maintenance release.
This release also includes enhancements to vector search and the mariadb-dump and mariadb-import command-line tools, compatibility improvements for triggers and stored functions, as well as other improvements.
Introducing New Vector Functions
- MariaDB Community Server 11.7 introduces the VEC_DISTANCE_EUCLIDEAN() and VEC_DISTANCE_COSINE() comparison functions, utilizing the vector index. The choice of function depends on the vector creation method.
The new VEC_DISTANCE() function simplifies the use of vector indexes by automatically selecting the most appropriate comparison for the given index.
Expanded Functionality and Improved MySQL, Oracle and SQL Standard Compatibility Enhancements
- The default mapping for the OS character sets “utf8” and “utf-8” has been changed from the MariaDB “utf8” character set (which only supports 3-byte UTF-8) to the “utf8mb4” character set, which supports the full UTF-8 standard. This change ensures that UTF-8 clients can access the complete UTF-8 character set by default in MariaDB.
- Update triggers can now be limited to updates of specific columns, as defined by the SQL Standard. The trigger will only be called if one of the specified columns is updated.
Syntax:
CREATE TRIGGER mytrigger BEFORE UPDATE OF col1, col2 ON t1 FOR EACH ROW …
- Triggers of the type BEFORE INSERT, BEFORE UPDATE, and BEFORE DELETE can now use the SIGNAL SQLSTATE ’02TRG’ command to skip a row operation (insert, update, or delete) on a table.
- Support for TYPE type_name IS RECORD (..) has been added which can be used inside the DECLARE section stored routines and anonymous blocks to define a data type as a record.
Example:
DECLARE TYPE DeptRecTyp IS RECORD ( dept_id NUMBER(4), dept_name VARCHAR2(30), mgr_id NUMBER(6), loc_id NUMBER(4) );
- Stored procedures now allow default values to be assigned to their parameters, making it possible to set defaults for optional parameters.
Syntax:
CREATE OR REPLACE PROCEDURE p1(param1 INT, param2 INT DEFAULT 1)
Miscellaneous
- The mariadb-import command line tool now has the –innodb-optimize-keys option. When used with InnoDB tables, this option parses the CREATE TABLE statement and defers index and constraint creation until after data loading. This can improve the performance of loading data.
- Multi-table DELETE statements now support ORDER BY with LIMIT, and single-table DELETE statements now allow for index hints.
- The Key Management System (KMS) plugin “file_key_management”, used for providing keys for the MariaDB Server Data-at-Rest feature, can now read from a unix socket, not only from a file.
Resources
- MariaDB Community Server 11.7 RC (Blog Post)
- MariaDB Community Server 11.7 release (Release Notes)
- MariaDB Community Server 11.8 release (Release Notes)
- Blog Posts about Vector
Download MariaDB Community Server 11.7 GA or the first release of 11.8 at mariadb.com/downloads.