Release Notes for MariaDB Enterprise ColumnStore 23.10.0
This page is part of MariaDB's Documentation.
The parent of this page is: Release Notes for MariaDB Enterprise ColumnStore 23.10
Topics on this page:
Overview
MariaDB Enterprise ColumnStore 23.10.0 is a feature release of MariaDB Enterprise ColumnStore. MariaDB Enterprise ColumnStore is a columnar storage engine included with MariaDB Enterprise Server.
MariaDB Enterprise ColumnStore 23.10.0 was released on 2023-10-11. This release is of General Availability (GA) maturity. MariaDB Enterprise ColumnStore 23.10.0 is the first GA release in the 23.10 series.
This release of MariaDB Enterprise ColumnStore is included with MariaDB Enterprise Server 10.6.15-10.
The changes listed here are relative to MariaDB Enterprise ColumnStore 23.02.4.
Notable Changes
Improved compatibility with InnoDB behavior when performing a
WHERE
clause withNULL
comparison. (MCOL-271)The default character set and collation have changed.
In previous releases,
latin1
is the default character set.latin1
uses 1 byte per character.Starting with this release,
utf8
(utf8mb3
) is the default character set.utf8mb3
uses 3 bytes per character.If an existing table schema contains column types whose byte width now exceed the maximum byte width for that column type, dropping and creating the table with the new version without specifying
CHARSET=latin1,
will fail. Users who need latin1 character set should specifyCHARSET=latin1
when creating tables (CREATE TABLE
).
For example,
create table t1 (a VARCHAR(8000))engine=columnstore;
in the new version usingutf8mb3
as the default CHARSET will fail, because the maximum allowable character length will be 2666=(8000/3). So if the user wants to use the existing table schema,latin1
should be specified as the CHARSET either at the column-level (for example,create table t1 (a VARCHAR(8000) charset 'latin1')engine=columnstore;
or at the table-level in the DDL, for example,create table t1 (a VARCHAR(8000))engine=columnstore default charset=latin1;
mcs cluster
commands support ColumnStore cluster management operations. (MCOL-4848)mcs cluster status
- get MCS cluster statusmcs cluster stop
- stop MCS clustermcs cluster start
- start MCS clustermcs cluster restart
- restart MCS clustermcs cluster node add –-node <hostname\IP\FQDN>
- add node to MCS cluster. The–-node
argument can be used multiple times in one command.mcs cluster node remove –-node <hostname\IP\FQDN>
- remove node from MCS cluster. The–-node
argument can be used multiple times in one command.mcs cluster set mode –-mode <mode>
- set MCS cluster mode. Accepted values arereadonly
andreadwrite
mcs cluster set api-key –-key <api_key>
- set MCS cluster API management keymcs cluster <command> –-help
- outputs help on each command
Some commands have one or multiple optional arguments, to see optional argument values, use the
--help
argument after any command, for example:mcs cluster node remove --help
Collation information is available to the
cpimport
utility through the system catalog. (MCOL-5005)cpimport
is character set aware. (MCOL-4931)Improved Disk Join step to handle corner cases for large data. (MCOL-5477)
The
columnstore.cnf
has been cleaned up and updated. Unused code has been deleted. Certain server settings related to ColumnStore performance that may differ than the server's own defaults have been added, for example,character_set_server
andcollation_server
. (MCOL-5519)
Issues Fixed
Can result in unexpected behavior
After a DML failure, the table lock remains. (MCOL-4988)
After using
ALTER TABLE
to add a newAUTOINCREMENT
column or to change a column toAUTOINCREMENT
,callastinsertid()
shows incorrect autoincrement value. (MCOL-5572)Trailing spaces behave differently in ColumnStore than in InnoDB causing unexpected results. (MCOL-4403)
With a query containing a 3 table
JOIN
, the wrong result can be returned. (MCOL-5539)With queries containing a
JOIN
, a bad result set can be produced. (MCOL-5522)After switching
JOIN
order, the aggregated count on left join result is incorrect. (MCOL-5543)After installation or service restart, permissions for the
/dev/shm
directory are incorrect. (MCOL-5535)
Interface Changes
columnstore_
diskjoin_ system variable addedforce_ run columnstore_
diskjoin_ system variable addedmax_ partition_ tree_ depth columnstore_
max_ system variable addedallowed_ in_ values columnstore_
max_ system variable addedpm_ join_ result_ count mariadbd
--columnstore-diskjoin-force-run command-line option addedmariadbd
--columnstore-diskjoin-max-partition-tree-depth command-line option addedmariadbd
--columnstore-max-allowed-in-values command-line option addedmariadbd
--columnstore-max-pm-join-result-count command-line option added
Default Values Changed
character_
set_ changed fromclient latin1
toutf8mb3
character_
set_ changed fromconnection latin1
toutf8mb3
character_
set_ changed fromdatabase latin1
toutf8mb3
character_
set_ changed fromresults latin1
toutf8mb3
character_
set_ changed fromserver latin1
toutf8mb3
collation_
connection changed fromlatin1_swedish_ci
toutf8mb3_general_ci
collation_
database changed fromlatin1_swedish_ci
toutf8mb3_general_ci
collation_
server changed fromlatin1_swedish_ci
toutf8mb3_general_ci
If an existing table schema contains column types whose byte width now exceed the maximum byte width for that column type, dropping and creating the table with the new version without specifying CHARSET=latin1,
will fail. Users should specify CHARSET=latin1
in CREATE TABLE
statements.
Platforms
In alignment to the enterprise lifecycle, MariaDB Enterprise ColumnStore 23.10.0 is provided for:
CentOS 7 (x86_
64) Debian 11 (x86_
64, ARM64) Debian 12 (x86_
64, ARM64) Red Hat Enterprise Linux 7 (x86_
64) Red Hat Enterprise Linux 8 (x86_
64, ARM64) Red Hat Enterprise Linux 9 (x86_
64, ARM64) Rocky Linux 8 (x86_
64, ARM64) Rocky Linux 9 (x86_
64, ARM64) Ubuntu 20.04 (x86_
64, ARM64) Ubuntu 22.04 (x86_
64, ARM64)