Release Notes for MariaDB Enterprise ColumnStore 23.02.4

Overview

MariaDB Enterprise ColumnStore 23.02.4 is a maintenance release of MariaDB Enterprise ColumnStore. MariaDB Enterprise ColumnStore is a columnar storage engine included with MariaDB Enterprise Server.

MariaDB Enterprise ColumnStore 23.02.4 was released on 2023-07-03. This release is of General Availability (GA) maturity. MariaDB Enterprise ColumnStore 23.02.4 is the fourth GA release in the 23.02 series.

MariaDB Enterprise ColumnStore 23.02 replaces MariaDB Enterprise ColumnStore 22.08 in MariaDB Enterprise Server 10.6.

This release of MariaDB Enterprise ColumnStore is included with MariaDB Enterprise Server 10.6.14-9.

Users of earlier MariaDB Enterprise ColumnStore releases are encouraged to upgrade.

Notable Changes

Issues Fixed

Can result in a hang or crash

  • When exporting data from a ColumnStore table using SELECT .. INTO OUTFILE or adding data to a ColumnStore table from another ColumnStore table using INSERT .. SELECT, if the size of the ColumnStore table exceeds the amount of RAM on the server, the PrimProc process uses all of the available memory, which cause the out-of-memory (OOM) killer to kill the process and results in the following error: (MCOL-5489)

    ERROR 1815 (HY000): Internal error: MCS-2004: Cannot connect to ExeMgr.
    
  • When the JSON_ARRAYAGG() function is used to produce long strings, excessive memory can be used, which can cause PrimProc to crash with a segmentation fault. (MCOL-5491)

    • In previous releases, this issue can cause various types of messages to appear in the ColumnStore logs prior to the crash, such as:

      CAL0000: InetStreamSocket::readToMagic(): I/O error1: rc-1; poll signal interrupt ( POLLHUP POLLERR )         %%10%%
      CAL0001: Table does not exist in ColumnStore.
      
    • In previous releases, this issue can cause clients to see the following error message:

      ERROR 1815 (HY000): Internal error: InetStreamSocket::readToMagic: Remote is closed
      
    • Starting with this release, less memory should be used in this scenario.

  • When a node communicates with itself over memory, the node effectively has an unlimited message queue, which causes memory usage to increase until the out-of-memory (OOM) killer kills the process. (MCOL-5499)

    • In previous releases, when a node communicated with itself over memory, the FlowControl mechanism was effectively disabled. Without FlowControl, if a slow consumer exists somewhere in the query execution pipeline, the Distributed Engine Communication (DEC) receive queue can be overloaded.

    • Starting with this release, FlowControl is enabled when a node communicates with itself over memory.

Can result in unexpected behavior

  • The EXTRACT(QUARTER FROM <date_value>) function can return an incorrect quarter value. (MCOL-5068, MCOL-5503)

  • When executing a query that contains multiple nested SELECT statements that involve a UNION in the inner SELECT statements, an error is returned when columns with the same name are referenced by alias. (MCOL-5357)

    • In previous releases, an error is raised similar to:

      ERROR 1815 (HY000): Internal error: MCS-3009: Unknown column '.TABLE_ALIAS.COLUMN_ALIAS'.
      
  • When columnstore_use_import_for_batchinsert is enabled, the LOAD DATA INFILE statement loads values incorrectly for the MEDIUMINT, TIME, and TIMESTAMP data types. (MCOL-5480)

  • When using the columnstore_info.load_from_s3 stored procedure, even if the data is successfully loaded to the ColumnStore table, the procedure reports an import failure: (MCOL-5509)

    {"success": false, "inserted": 0, "processed": 0}
    
  • When using the columnstore_info.load_from_s3 stored procedure, if cpimport fails, the user connection hangs until the connection times out without any error messages. (MCOL-5510)

    • Starting with this release, the following error message is raised:

      {"error": "2023-06-19 19:12:27 (13398) ERR : Actual error row count(11) exceeds the max error rows(10) allowed for table DATABASE_NAME.TABLE_NAME [1451]\n"}
      
  • When performing a join with a large table, the post-join filters are not applied. (MCOL-5512)

    • In previous releases, this could cause results to be incorrect.

Platforms

In alignment to the enterprise lifecycle, MariaDB Enterprise ColumnStore 23.02.4 is provided for:

  • CentOS 7 (x86_64)

  • Debian 11 (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)