Skip to main content

Release Notes

StoneDB-5.7-V1.0.3

Release date: March 20,2023

  • Reconstructed the binlog mechanism to filter out DDL statements that are not supported by the Tianmu storage engine.
  • Added an argument named NO_KEY_ERROR for SQL mode to directly skip DDL statements that are not supported by the SQL layer, instead of reporting errors.

Syntax:

# At global level:
mysql>set global sql_mode='NO_KEY_ERROR';

# At session level:
mysql>set session sql_mode='NO_KEY_ERROR';

# Configuration file my.cnf:
[mysqld]
sql_mode = 'NO_KEY_ERROR'

Ecosystem Adaptation

Better adapted to the ecosystem to display the version number of StoneDB.

Perfomance

Improved the primary/secondary synchronization performance. #1213

Bug Fixes

The following bugs are fixed:

  • Incorrect result is returned when an ALTER TABLE statement is executed to add a TIMESTAMP field. #1327
  • Incorrect result is returned for an UPDATE operation on a table after it is modified by an ALTER TABLE statement. #1253
  • Incorrect result is returned for a query on BIGINT data that is unsigned. #1203
  • An error is reported when a statement is executed to load data. #1209
  • The result returned for an AVG function call is incorrect. #1125
  • An error is reported when an ALTER TABLE statement is executed to change the data type of a field. #752
  • Other bugs. #103#1230#1255#1188#1262

Supported OSs

  • CentOS 7.6 and later
  • Ubuntu 20

For more details on the update, please visit Github and Gitee.

StoneDB-5.7-V1.0.2

Release date: January 15,2023

New features

  • Supports user-defined functions
  • Supports ESCAPE
  • Supports Primary key and Supports syntactically index constraints
  • Supports modifying the character set of table or field
  • Supports BIT data type
    • Supports Creation, change and deletion
    • Supports logical operation
  • Supports replace into statement
  • Supports syntactically unsigned and zerofill
  • Sql_mode add value 'MANDATORY_TIANMU' for mandatory Tianmu engine in table
    • The following statement demonstrates the syntax:

# Global level
mysql>set global sql_mode='STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,MANDATORY_TIANMU';

# Session level
mysql>set session sql_mode='STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,MANDATORY_TIANMU';

#Set my.cnf parameter file
[mysqld]
sql_mode = 'STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,MANDATORY_TIANMU'

Accessibility

  • Automatic detection and identification of installation package
  • Rapid deployment of StoneDB as an analytical database for MySQL

Stability

  • Enhanced the stability as an analytical database

Bug Fixes

The following bugs are fixed:

  • The GROUP_CONCAT() function return result set error #938
  • Bugs when use LIKE in WHERE #1162 #1157 #763
  • Bugs when use Primary key with AUTO_INCREMENT #1144 #1142
  • ALTER table..ADD numeric column, return error#1140
  • Clang-format execute failed in CI/CD#973
  • INSERT INTO table error, but some data can be inserted successfully#965
  • Query with UNION ALL return result set error #854
  • The EXTRACT() function error #845
  • Select...in...An error was reported when the date was included #829
  • Update multiple values does not work with WHERE IN clause #781
  • The syntax of the exists subquery in the TIANMU layer is compiled after the rule is incorrect, and the semantics is modified #732
  • MTR binlog.binlog_unsafe Crash #341
  • The other BUG #682 #553 #508

Behavior Change

Using the Shell script for rapid deployment of StoneDB as an analytical database for MySQL, parameter sql_mode default add value of MANDATORY_TIANMU to enable the mandatory TIANMU engine

Platforms

  • CentOS 7.6 or obove
  • Ubuntu 20

Others

  • Add more MTR test cases

StoneDB-5.7-V1.0.1

Changes in StoneDB_5.7_v1.0.1 (2022-10-24, General Availability)

  • Functionality Added or Changed
  • Compilation Notes
  • Document Notes
  • Bugs Fixed

Functionality Added or Changed

  • Tianmu: From StoneDB_5.7 v1.0.1, you can use delete statement to clear some data you don't need.
delete from table1;
delete from table1, table2, ...;
delete from table1 where ...;
delete from table1, table2, ... where ...;
  • Tianmu: From StoneDB_5.7 v1.0.1, you can use alter table statement to modify the table structure as you need.
alter table tablename
  • Tianmu: Binlog replication supported ROW format;
binlog_format = ROW
  • Tianmu: Added temporary table function;
CREATE TEMPORARY TABLE IF NOT EXISTS tablename
  • Tianmu: From StoneDB_5.7 v1.0.1, you can create a trigger. The trigger is a named database object that is associated with a table, and that activates when a particular event occurs for the table.
create trigger triggername
  • Tianmu: Added Create table AS... union... statement;
  • Tianmu: The Tianmu engine improved the performance of subqueries;
  • Tianmu: Added gtest module;
  • Tianmu: Added some mtr test cases; Compilation Notes
  • Added cmake parameter configuration for build
cmake  .. -DWITH_MARISA  -DWITH_ROCKSDB

Document Notes

StoneDB-5.7-V1.0.0

Changes in StoneDB_5.7_v1.0.0 (2022-08-31, General Availability)

  • Support for MySQL 5.7
  • Functionality Added or Changed
  • Compilation Notes
  • Configuration Notes
  • Document Notes
  • Bugs Fixed

Support for MySQL 5.7

  • Important Change: The Tianmu engine supports MySQL 5.7,base line edition MySQL 5.7.36. This change applies to the StoneDB database which would be fully compatible with the MySQL 5.7 protocols.

Functionality Added or Changed

  • Important Change: The engine name has been changed to tianmu. StoneDB is used as a HTAP database name, it is not suitable for used both as an engine name. As the dissusion result, we choose tianmu as our new eninge name:
mysql> show engines;
+----------------+---------+--------------------------+--------------+------+------------+
| Engine | Support | Comment | Transactions | XA | Savepoints |
+----------------+---------+--------------------------+--------------+------+------------+
| TIANMU | DEFAULT | Tianmu storage engine | YES | NO | NO |
+----------------+---------+--------------------------+--------------+------+------------+
  • Tianmu: Improved the aggregation capabilities of the decimal data type.

  • Tianmu: Improved the readability of code. The code does not spererate logically, or the variables name can not be understooed by the literal meaning. To refactor code make it more readable to anyone who are the first to read that. For example: Changes int DoGetSomething(); to int GetSomethingXXX();, int GetNoNulls() to int GetNumOfNulls().

  • Tianmu: The date-related functions (such as DATE_ADD, DATE_SUB) can be queried (DATE_ADD|DATE_SUB) when creating view using the date func.(BUG #342)

Compilation Notes

  • The version of the Boost library for server builds is now 1.66.0.

  • The version of the Rocksdb for server builds is now 6.12.6.

Configuration Notes

  • Important Change: Changed default config file stonedb.cnf to my.cnf. (feature #182)

  • Important Change: Use tianmu as the default storage engine. (feature #255)

Document Notes

  • The manual has been updated as the code was modified. ( # address)

Bugs Fixed

StoneDB-5.6-V1.0.0

Release time: June 30, 2022