Maintenance Release Changelog
On this page
2023-11-28 Version 8. 1. 30
-
Fixed an issue where the number of rows affected with
SELECT INTO
object storage was erroneously reported as 0 rows. -
Fixed an issue where small tables use an inappropriately small sample size by setting a lower bound.
This mostly affects reference tables.
2023-11-21 Version 8. 1. 29
-
Fixed a potential crash that could occur when
LOAD DATA
is used without a database context. -
Pipeline state is now shown consistently across primary and child nodes.
-
Fixed an issue with the
SET
clause of theCREATE PIPELINE
statement: now it is possible to use type options likeNULL/NOT NULL/COLLATE.
with. . :>/!:>
typecast operators. -
Added a new engine variable
pipelines_
to specify the JVM heap size limit for CDC-in pipelines.cdc_ java_ heap_ size
2023-11-13 Version 8. 1. 28
-
Fixed an issue with
JSON_
used in UDFs.SET_ JSON -
Fixed a potential issue related to hash join spilling.
-
Reduced blocking in query compilation after evicting many (10K+) plans in the plancache.
2023-11-07 Version 8. 1. 27
-
Added three new fields to
MV_
:SYSINFO_ DISK -
READ_
: Number of read operations performed by the device since start up.OPERATIONS_ CUMULATIVE_ PER_ DEVICE -
WRITE_
: Number of write operations performed by the device since start up.OPERATIONS_ CUMULATIVE_ PER_ DEVICE -
DEVICE_
: Name of the device to which the values inNAME read_
andoperations_ cumulative_ per_ device write_
are associated.operations_ cumulative_ per_ device
-
-
Disabled
order_
rewrite when an ORDER BY contains an indeterminate function.by_ self_ join -
Disabled group-by on encoded data when there is an aggregate on full-text match.
-
Fixed a potential security issue with users created without a password.
-
Fixed some cases where
APPROX_
erroneously included nulls in the count.COUNT_ DISTINCT_ ACCUMULATE -
Fixed an issue preventing correct ingestion from MongoDB® collections with dot symbols.
-
Fixed an issue in CDC pipelines that could lead to Java Out Of Memory errors.
-
Improved performance during snapshotting for CDC-in pipelines.
-
Changed the SingleStoreDB Cloud workspace default and range for the
pipelines_
engine variable.cdc_ row_ emit_ delay_ us Throttling default value is set to 1. The supported range is from 0 to 1000000. -
Addressed some performance issues that occur when performing large sets of security operations (creating a lot of groups/users/roles, etc.
) via the new privilege_
engine variable.caches_ update_ mode This variable can be used to temporarily disable updating privilege caches while performing security operations such as: granting/revoking permissions to/from users, granting/revoking permissions to/from roles, adding/deleting roles to/from groups, adding/deleting users to/from groups, role deletion, group deletion.
This can result in a performance gain. IT IS IMPORTANT that the privilege cache updates be reenabled (value set back to
always
) once the administration work is finished.To use this variable:
-
Set the value to
never
. -
Perform the operations.
-
Set the value back to
always
.
-
-
Fixed a crash caused when
AS WASM/WITH WIT
is used in aCREATE AGGREGATE
statement that (1) doesn't haveHANDLE
as the state type, and (2) doesn't supply theSERIALIZE
andDESERIALIZE
callbacks. -
Fixed an issue where error messages were not generated when corrupt blob was encountered during json encoding read/write.
-
Added additional node metrics to the /cluster-metrics endpoint of the
memsql_
.exporter
2023-10-17 Version 8. 1. 26
-
Reverted the ability to use SSL keys with a password in the HTTP API.
2023-10-11 Version 8. 1. 25
-
Fixed an upgrade issue where some databases could temporarily become unrecoverable if snapshots were skipped during a pre-upgrade on a recently attached unlimited database.
-
Fixed an issue preventing nodes from attaching during upgrade.
-
Added ability to use SSL keys with a password in the HTTP API.
-
Added support for simple multi-column update with sub-query.
2023-10-03 Version 8. 1. 24
Warning
Versions 8.
-
Added resource pool metrics to the /cluster-metrics endpoint of the
memsql_
.exporter -
Added ability to infer CSV data with text boolean values.
-
Fixed background pipelines not respecting max concurrency limit in the resource pool.
Please note that this change will affect previously created pipelines using a constrained resource pool, including the error state if MAX_
is exceeded.QUEUE_ DEPTH -
Fixed an issue with two-phase commit that could lead to loss of atomicity on databases restored from 8.
1 backups. -
Fixed an issue with the transaction log not being downgradable to previous 8.
1 patch releases. -
Fixed an issue where two-phase commit would not work correctly on disaster recovery failovers.
-
Improved the performance of
mv_
for clusters with large DR databases.replication_ status
2023-09-25 Version 8. 1. 23
-
Improved blob cache sync performance when there is no running query.
-
Added support for flipping join order for
FULL OUTER JOIN
operations.
2023-09-19 Version 8. 1. 22
-
Fixed an issue where unlimited storage databases stored on Amazon S3 could run out of connections under intense loads.
2023-09-15 Version 8. 1. 21
-
Fixed a bug where leaf failover and
ATTACH LEAF
would copy extra partitions. -
Fixed an issue where the rebalance done by
ATTACH LEAF
was unstable with respect toREBALANCE ALL DATABASES
. -
Fixed an issue where an incorrect result is produced when the engine variable
query_
is set withparallelism flexible_
.parallelism query_
is deprecated andparallelism query_
should be used instead.parallelism_ per_ leaf_ core -
Removed an unexpected warning related to the engine variable
query_
(which is deprecated) when a query contains anparallelism ORDER BY
clause with anIN
list filter that matches the table's shard key. -
The
START TRANSACTION
command is no longer allowed from Data API unless it is inside a stored procedure. -
Now redirecting the AWS-GO-SDK log to a file instead of writing to
stdout
. -
Fixed a bug where an aggregator result table hits a lockdown when
sql_
is set.select_ limit -
Added two engine variables:
max_
which sets a limit on the number of expressions within an entire query andexpression_ query_ limit max_
which sets a limit on the number of expressions within a query item.expression_ item_ limit Both can be set to a range between 100
and the maximum unsignedINT
value.Setting these engine variables to the maximum unsigned INT
value disables both features. -
Fixed an issue where a crash occurs where the engine improperly rewrites queries with a
UNION
in anEXCEPT
clause.
2023-09-05 Version 8. 1. 20
-
Fixed several issues causing slow compilation for queries over wide tables.
-
Added two engine variables,
jwks_
andusername_ field jwks_
to add flexibility and improve security.require_ audience -
Added support for materializing CTEs without recomputing them when the query contains
UNION
,UNION ALL
, and otherSET
operations.To enable the feature, set the engine variable allow_
tomaterialize_ cte_ with_ union TRUE
.The default value for this engine variable is FALSE
for version 8.1. 19 and earlier. -
Fixed a memory leak issue in the
memsql_
process.exporter -
Enhanced the performance of DDL statements for role manipulation.
2023-08-28 Version 8. 1. 19
-
The
SHOW COLUMNAR MERGE STATUS
command now outputs status for tables with empty sort keys. -
The following commands now respect non-default
columnstore_
values:table_ lock_ threshold INSERT .
,. . SELECT . . . ON DUPLICATE UPDATE REPLACE .
, and. . SELECT REPLACE .
.. . LOAD -
Fixed an issue where
VECTOR_
was returning incorrect results on shard tables.MUL -
Fixed an issue where
memsql_
was generating too much "pipeline_exporter error" data. -
Fixed an issue with the Kerberos cache for HDFS pipelines.
-
Improved memory consumption in json decoding.
-
Fixed an issue where
LIMIT
andOFFSET
after a window function with noPARTITION BY
clause were returning incorrect information. -
The
WARM BLOB CACHE FOR INDEX
command can now accept index names that conflict with reserved identifiers (such as PRIMARY, etc.).
2023-08-23 Version 8. 1. 18
-
Added support for the
REGEXP_
function.MATCH() This function returns a JSON array of matching substring(s) within the first match of a regular expression pattern to a string. -
Improved performance of multi-part GCS backups.
-
Introduced a new global engine variable
json_
which limits the number of JSON key paths inferred within a segment.document_ max_ leaves The default value is 10000
.
2023-08-09 Version 8. 1. 17
-
Fixed an issue where
BACKUP
orRESTORE
of an existing backup from GCS fails on SingleStoreDB versions newer than 8.1. 6. -
Fixed an issue where
BACKUP DATABASE WITH INIT
would fail under out-of-memory conditions. -
Fixed a potential crash in NFS backup when encountering an IO error.
2023-08-08 Version 8. 1. 16
-
Added support for multiple uncorrelated IN-subselects in more query shapes.
-
SKIP PARSER ERRORS
is now supported for Kafka.Additionally, a new related engine variable, pipelines_
, has been added.parse_ errors_ threshold -
Fixed an issue with the incremental restore of an unlimited database that would fail if the restore was larger than the disk.
-
SingleStoreDB automatically rewrites A=B OR (A IS NULL AND B IS NULL) to null safe equal (A<=>B) to enable hash joins.
-
Added support for hash joins on null-accepting expressions in the ON condition of outer joins.
-
Fixed an issue with significant memory reduction from spilling for hash join queries with variable length strings (varchar, text, etc.
) involved.
2023-08-02 Version 8. 1. 15
-
Introduced a new global variable,
dr_
, which allows users to adjust the minimum timeout period in Disaster Recovery (DR) replication.min_ connection_ timeout_ ms
2023-07-27 Version 8. 1. 14
-
Fixed a bug that could cause Amazon S3 pipelines to stop loading data.
2023-07-26 Version 8. 1. 13
-
Added support for Control Group v2 (cgroup v2).
-
Fixed an issue where a large spike in the query memory consumption on a any SingleStoreDB node could cause replicas on the same node to become unrecoverable.
-
Fixed a pipeline wrong state issue caused by an error in a table with a computed column.
-
Fixed a potential issue where
REBALANCE PARTITION
would not stabilize to a partition placement on a read replica's workspace. -
Fixed a potential crash in some edge cases when using Parquet pipelines.
2023-07-18 Version 8. 1. 12
Warning
Version 8.
-
Fixed an issue with upgrade steps not running in some edge cases.
A logging change was required, making the log format incompatible with earlier patch releases. -
Fixed a crash that may occur when using
SELECT … FOR UPDATE … LIMIT <n>
in a multi-statement transaction whentwo_
is ON.phase_ commit -
Fixed a bug where the permissions do not clear for Data Manipulation Language (DML) queries and then leak to subsequent Data Definition Language (DDL) queries.
-
Fixed a bug where the
mv_
table would show incorrect results for the plancache directory.disk_ usage -
Default values for BLOB/TEXT and JSON columns are allowed, as well as NULL and empty strings.
Fixed a bug where utf8mb4 characters were not allowed inside default values for CHAR/VARCHAR columns. CREATE TABLE table_1(col_1 JSON DEFAULT {'amt': 10});CREATE TABLE table_2(col_1 BLOB DEFAULT ('xyz'));CREATE TABLE table_2(col_1 longtext DEFAULT '{...}'); -
Fixed a potential issue where changing a user password would not change the connection pool password in the Data API.
-
Reverted the performance improvements for backups to GCS (Google Cloud Storage).
2023-07-10 Version 8. 1. 11
-
Bugfix: Fixed a crash that may occur when a function calls more than one external function.
In the following example
get_
is an external function:embedding() SELECT DOT_PRODUCT(JSON_ARRAY_PACK(get_embedding('house')),JSON_ARRAY_PACK(get_embedding('car')) -
Added an opt-in optimization to Kerberos for HDFS pipelines to reduce the amount of requests.
-
Added a
LimitNICE
value into the service file.This change affects installations where SingleStoreDB Cloud is running as a service. -
Fixed a JSON formatting issue for the
PARTITION_
event inUNRECOVERABLE MV_
details column.EVENTS -
Fixed the dependency on
PIPES_
inside user defined functions.AS_ CONCAT sql_ mode The sql_
state is now stored when a user defined function is created and used whenever the function is executed.mode
2023-07-07 Version 8. 1. 10
-
Fixed a bug in
memsql_
that may cause it to stop accepting HTTP requests.exporter
2023-07-06 Version 8. 1. 9
-
Added support for opaque OAUTHBEARER tokens in Kafka Pipelines.
-
Added support for
ROW_
information function within views.COUNT -
SingleStore does not support using the environment variables to initialize OpenSSL 3.
-
Added two engine variables (
workload_
andmanagement_ enable_ large_ memory_ classification workload_
) to help tune workload management to better support queuing with high memory queries.management_ available_ leaf_ memory_ ratio
2023-06-26 Version 8. 1. 8
-
Fixed a bug where a pipeline would fail with error code 2789.
The error occurred when the pipeline's "cursor offset" was below its "earliest offset". -
Fixed a bug where a
HashJoin
on a materialized CTE gets executed as aNestedLoopJoin
in some query shapes causing slow join performance. -
Fixed the
SPLIT
string function that was not detecting the correct argument type when used inside a table-valued function (TVF) or a user-defined scalar-valued function (UDF). -
Improved the accuracy of the
blob_
statistic in query profiles.fetch_ network_ time -
Added metrics to
memsql_
that show the breakdown of disk usage by SingleStoreDB Cloud.exporter Also, added metrics to memsql_
that show unlimited storage utilization statistics.exporter -
Fixed a bug with the
blob_
statistic in query profiles.fetch_ network_ time -
Fixed a performance bug about queue size when flexible parallelism is enabled.
Overall query performance is increased. -
Fixed an issue where, when parsing a table with many secondary keys, an incorrect name was used to refer to table's the primary key.
-
Enhanced the on-disk plancache functionality by shrinking the plancache when disk space gets low and the on-disk plancache is using at least 25% of available disk space.
-
Fixed a bug where unlimited storage garbage collection could occur before a partition could recover from that version.
2023-06-21 Version 8. 1. 7
-
Fixed a vulnerability in
memsql_
by updating Go Prometheus client to 1.exporter 15. 1. -
Added a metric to the
memsql_
that shows whether there are unavailable partitions in any database.exporter -
PAM (Pluggable Authentication Module) users are now allowed to start and configure the
memsql_
process.exporter -
Added support for disk spilling for
LEFT OUTER JOIN
query shapes. -
Added the
max_
engine variable.execution_ time It is unused and setting this variable has no effect. It exists so certain MySQL-compatible apps that have this variable set will not fail when connected to SingleStoreDB Cloud. -
Added
mv_
anddisk_ usage mv_
information schema tables that report the breakdown of disk utilization by SingleStoreDB Cloud.data_ disk_ usage -
Fixed an issue on sample tables that can be created with different collations on different partitions.
-
Fixed an issue where JSON computed column matching incorrectly triggers a JSON function.
-
Introduced the 8.
1 data_
which provides additional out-of-range checks for theconversion_ compatibility_ level TIMESTAMP
data type. -
Fixed a rare case where the query optimizer re-wrote a query into a non-equivalent query which produced more result rows.
2023-06-12 Version 8. 1. 6
-
Improved the performance of backups to GCS (Google Cloud Storage).
GCS backups are not using multi-part uploads. -
Fixed unlimited storage S3 multipart uploads to properly retry on 200 responses which contain an embedded "SlowDown" error, instead of failing immediately.
-
Fixed an issue where memory accumulates over time if reshuffle or repartition operators are executed for many unique query shapes.
-
Fixed an issue with crashes that occur when SSL is enabled on universal storage databases.
-
The
FLUSH EXTRACTOR POOLS
command now runs on all nodes in a cluster when run on an aggregator. -
Improved the
memsqlctl
management tool'sdescribe-node
property variables command to display global variables instead of session variables.
2023-05-30 Version 8. 1. 5
-
Disabled semi-join operator reduction optimization.
2023-05-28 Version 8. 1. 4
-
Fixed an issue where the query optimizer could choose incorrectly between using the
HashGroupBy
or theStreamingGroupBy
operators. -
Added more information about blob files that need to be downloaded from unlimited storage to the blob cache when running
PROFILE
. -
Fixed rare issue with sync durability and unlimited storage that could cause log file corruption in the blob storage.
-
Fixed an issue with optimizing queries containing no-operation predicates such as 1=1.
-
Improved the performance of a left join of a reference table with a sharded table by pushing the reference table clauses to the leaves.
The engine variable disable_
must be set to "OFF" to enable this operation.reference_ table_ leftjoin_ where_ pushdown -
Now allowing child aggregator root users to be dropped even if the
sync_
engine variable is enabled.permission -
Removed the restrictions on the names of JWT users.
Customers may now create users with names that look like UUIDs and emails.
2023-05-24 Version 8. 1. 3
-
Fixed a bug with error handling that produced spam messages.
-
Backups taken from the 8.
1. 3 release (and subsequent 8. 1 releases) are no longer restorable into the previous 8. 1 releases (8. 1. 1 and 8. 1. 2). -
Removed the
EXECUTE
permission requirements for Kai internal UDFs. -
Changed the system information built-ins to use the utf8_
general_ ci collation for the collation_
value.server
Last modified: November 28, 2023