Maintenance Release Changelog v8.5
On this page
2025-04-14 Version 8.5.43
-
Enhancement: Improved optimization speed of parameterized
IN
-lists by limiting traversal depth. -
Bugfix: Fixed an issue that caused a crash when a query referenced too many tables.
2025-04-08 Version 8.5.42
-
Enhancement: Added support for updated Standard and Premium licenses.
-
Enhancement: The deprecated Strict Mode feature is officially removed from SingleStore.
-
Bugfix: Fixed a bug in
JSON_
join pushdown optimization that occurred when the JSON value being extracted fromTO_ ARRAY() table_
is a JSON array.col -
Bugfix: Fixed an issue to prevent LRU eviction from stalling when several table modules are stale.
-
Bugfix: Fixed
ALTER RESOURCE POOL
to respect queue depth constraints. -
Bugfix: Fixed a bug that produced incorrect results when performing a hash join with a condition that compares mismatched types where one of the types is BSON.
-
Bugfix: Fixed an issue that impacted creating or altering a resource pool with a CPU percentage limitation after a MA failover.
-
Bugfix: Fixed a bug that occurred when a query used
I0
as a column name.
2025-03-19 Version 8.5.41
-
Internal updates.
2025-02-13 Version 8.5.40
-
Enhancement: Added an internal allocator
Alloc_
which tracks certain per-connection allocations that were previously tracked using the standard allocator.connection_ context
2025-01-28 Version 8.5.39
-
Enhancement: Improved pipeline error clearing.
Additional errors are cleared when CLEAR PIPELINES ERRORS
is run or when thepipelines_
limit is reached.errors_ retention_ minutes -
Enhancement: Added logging for LRU compiled unit eviction.
-
Enhancement: Added a new engine variable
scheduler_
that specifies the threshold for triggering the verbose logging of scheduler thread timing.slow_ loop_ seconds -
Enhancement: Added a new engine variable
scheduler_
that specifies the threshold for triggering logging of slow ready queue draining.slow_ ready_ queue_ seconds
2024-12-18 Version 8.5.38
-
New feature: Added support for the
file_
parameter in thecompression CONFIG
clause ofCREATE PIPELINE AS .
statement.. . LOAD DATA S3 Decompresses files with the specified extensions. Refer to S3 Configurations for more information. (8. 5. 38) -
Enhancement: Added the
TABLE_
column to theNAME LOAD_
information schema view.DATA_ ERRORS TABLE_
is the name of the table associated with the error.NAME (8. 5. 38) -
Bugfix: Fixed bottomless upload throttling criteria.
-
Bugfix: Blocked creation of temporary table as a shallow copy.
-
Bugfix: Fixed display of default BSON and string values with null-terminators in the information_
schema. -
Bugfix: Fixed
IN
-list index matching for columnstore tables when a query has multipleIN
-list predicates.
2024-11-26 Version 8.5.37
-
Bugfix: Fixed a bug that led to a master aggregator crash when using dynamic resource pools.
-
Bugfix: Fixed a crash that occurred during spilling when executing a query with a large number of
GROUP BY
columns.(8. 5. 37) -
Bugfix: Allowed cached table memory to be freed for empty tables in replica databases.
(8. 5. 37) -
Bugfix: Fixed a deadlock in a corner case involving index eviction and replaying two-phase commit transactions.
(8. 5. 37) -
Bugfix: Fixed the result of
ORDER BY .
queries on tables with a sort key column defined in. . LIMIT DESC
order.(8. 5. 37) -
Bugfix: Fixed an issue caused when multi-part names were used in common table expressions (CTEs) within UNION.
2024-11-05 Version 8.5.36
-
Enhancement: Improved out of memory (OOM) error message to make the message more accurate.
-
Bugfix: Fixed a crash that could occur when columns were dropped with
ALTER TABLE
. -
Bugfix: Fixed an issue where left join sometimes returned an incorrect result when spilling occurred.
2024-10-21 Version 8.5.35
-
Enhancement: Improved the performance of regular expression (regex) operations.
2024-10-15 Version 8.5.34
-
Bugfix: Fixed an issue where the garbage collection of a partition database's 2PC transaction table could unnecessarily delay the reprovisioning of the reference database.
-
Bugfix: Fixed deadlock in database recovery due to evicting table module holding an open LOCK.
2024-10-09 Version 8.5.33
-
Enhancement: Added a new
max_
global variable that sets the maximum number of merger threads that the autostats updater can run on.autostats_ update_ workers -
Enhancement: Fixed the
KILLED_
counter inQUERIES MV_
.RESOURCE_ POOL_ STATUS -
Enhancement: Added a new filter derivation rewrite controlled by the
optimizer_
engine variable.not_ null_ filter_ derivation -
Enhancement: When printing the table digest SHA value, the table DDL schema is also printed to
memsql_
.METADATA. log
2024-10-02 Version 8.5.32
-
Enhancement: Added metrics to track the availability of unlimited storage and the bottle service.
-
Bugfix: Fixed a certificate refresh issue for connections to remote storage in long-running clusters.
-
Enhancement: Added bottle service reliability metrics to
MV_
.BOTTOMLESS_ STATUS_ EXTENDED -
Bugfix: Fixed a rare issue where a membership-related clustering operation could delay the re-provision or deletion of a cluster database.
-
Bugfix: Fixed an issue where
JSON_
queries withMATCH_ ANY() MATCH_
evaluated incorrectly on non-array values.ELEMENTS -
Bugfix: Fixed sporadic reading failures from
MV_
.SYSINFO_ CPU
2024-09-05 Version 8.5.31
-
Bugfix: Clarified the error message produced in some cases where a snapshot gets aborted.
-
Enhancement: Updated the distributed OpenSSL license file.
-
Enhancement: Update to certificate loading behavior.
Prior to this change, only the first certificate was loaded from a server's . pem file specified via the server configuration. Now all certificates are loaded, so if a . pem file contains a certificates chain, then intermediate CA certificates will be returned by the server.
2024-08-14 Version 8.5.30
-
Bugfix: Fixed an issue where concurrent
DROP TABLE
s could block a snapshot from running indefinitely. -
Enhancement: Added
X-Content-Type-Options: nosniff
,Strict-Transport-Security: max-age=31536000
,Cache-control: no-store
headers to Data API responses. -
Enhancement: Improved performance of VECTOR-type User-Defined Variables(UDVs).
No longer require using extra typecast to BLOB datatype. -
Bugfix: Fixed a rare race condition where PITR would incorrectly operate on an unrecoverable database.
2024-07-30 Version 8.5.29
-
Bugfix: Fixed a password validation error on
ADD AGGREGATOR
. -
Bugfix: Fixed an issue that could occur when replacing JSON expressions with computed columns in
GROUP BY
lists. -
Enhancement: Added a new engine variable,
sampling_
, used to configure sampling in columnstore tables.estimate_ approach See Statistics and Sampling Concepts for more information.
-
Enhancement: Added websocket_
proxy. log to the files managed via Trace Log Rotation. -
Enhancement: Added a new engine variable:
assume_
.udfs_ deterministic This variable controls behavior where SingleStore will do extra work to avoid issues caused by UDFs that return different values when repeatedly invoked (e. g. , are non-deterministic). This variable defaults to false, preserving the existing behavior (since SingleStore version 8. 0), where SingleStore will ensure these computations take place once on an aggregator node. When set to true, SingleStore will avoid this extra layer of coordination (and bottleneck) allowing leaf nodes to independently coordinate. -
Bugfix: Fixed an issue where in a VM environment
SHOW LEAVES
could show corrupted latency values due to incorrect values from the system clock if the VM is stopped or migrated. -
Enhancement: Added a method to throttle upload ingest when blob cache has low evictability and running out of disk space is imminent.
This is controlled via two new engine variables: bottomless_
andupload_ throttle_ hard_ limit_ cache_ usability bottomless_
.upload_ throttle_ soft_ limit_ cache_ usability bottomless_
: The usability (free space + evictable space) of blob cache below which all columnstore ingest is throttled.upload_ throttle_ hard_ limit_ cache_ usability bottomless_
: The usability (free space + evictable space) of blob cache below which some columnstore ingest is throttled.upload_ throttle_ soft_ limit_ cache_ usability
2024-07-16 Version 8.5.28
-
Enhancement: Added a new engine variable,
enable_
.extended_ types_ metadata Used to enable the handling of extended data types that are not defined in MySQL enum_
.field_ types Default is disabled. When enabled, SingleStore may send extended metadata to the client. It provides the ability to distinguish between different data types, and handle them appropriately in client applications. -
Bugfix: Fixed display of microseconds for default TIMESTAMP(6) column values in system information commands (such as
DESCRIBE TABLE
orINFORMATION_
).SCHEMA. COLUMNS. COLUMN_ DEFAULT -
Bugfix: Fixed a potential false positive output for OBSERVE queries during the first delete of large columnstore segments.
-
Bugfix: Fixed an issue where user defined variables could read collation-related variables incorrectly during a
SET @var = .
command.. . -
Enhancement: Allow leading 0x prefix for
OBSERVE
offsets. -
Bugfix: Fixed an issue where the output of the
OBSERVE
query for the first delete on a columnstore segment was the inverse of expected. -
Bugfix: Fixed issue where, in a stored procedure query-type-variable definition, a column was incorrectly assumed to belong to a table in an outer select when it was possible that the column instead belonged to a yet to be defined table.
-
Enhancement: SingleStore throws an error when inserting incorrect data into vector column for any
data_
.conversion_ compatibility_ level
2024-07-02 Version 8.5.27
-
Bugfix: Identified an upgrade scenario that causes a blob leak.
As a result, temporarily disallowing shallow table copy for tables created on version 8. 0 or before. -
Enhancement: Added support for
ON NODE
clause forSHOW PROFILE PROCESS|PLAN
, which forwards the command to another aggregator. -
Enhancement: Improved performance of the
CREATE PROJECTION
command. -
Enhancement: Added support to execute
KILL QUERY
on leaf node IDs. -
Bugfix: Unneeded sort fields will no longer be projected to the aggregator.
-
Enhancement: Enhance table pushdown to union rewrite to enable derived table pushdown based on row count estimation.
-
Bugfix: Fixed an issue where deleting a local user on a leaf made aggregates fail to run on that leaf.
2024-06-28 Version 8.5.26
-
Bugfix: Fixed a rare issue where Unlimited Storage GC could use up all of the MA's available connections.
-
Bugfix: Identified an upgrade scenario that causes a blob leak and added a command to delete the leaked blobs.
-
Enhancement: Updated the
MV_
information schema table:BOTTOMLESS_ STATUS_ EXTENDED -
Removed the
LATEST_
andAPI_ FAILURE_ RATE AVERAGE_
columns.API_ LATENCY_ US -
Added the following columns:
SUCCESS_
- Number of successful remote storage api calls per second over the last 30 seconds.API_ PER_ SECOND FAILED_
- Number of failed remote storage api calls per second over the last 30 seconds.API_ PER_ SECOND AVERAGE_
- Average latency to complete a remote storage api event over the past 30 seconds.API_ EVENT_ LATENCY_ US Includes time taken on retries or waiting for rate limiting. AVERAGE_
- Average latency of receiving a response for a remote storage api request.API_ RESPONSE_ LATENCY_ US Excludes waiting for rate limiting or retries. NOTE: This is relevant only for S3. otherwise this field is identical to AVERAGE_
.API_ EVENT_ LATENCY_ US
-
2024-06-20 Version 8.5.25
-
Bugfix: Fixed a crash that occurred when dropping a database with tables containing very high and very low column IDs.
2024-06-18 Version 8.5.24
-
Bugfix: Fixed issues with the
TO_
function where results were truncated or reading communication packet errors were generated.CHAR() -
Bugfix: Fixed an integer overflow issue in unique integer columns by changing the storage type to a 32-bit unsigned integer.
-
Bugfix: Fixed incorrect results in an uncommon scenario where hash join operators with an optimization path need to spill.
-
Enhancement: The
memsql_
now collects additional fields from theexporter mv_
information schema view.activities_ extended_ cumulative -
Enhancement: Updated the default
client.
for the Kafka configuration to the SingleStore partner ID.id
2024-06-12 Version 8.5.23
-
Enhancement: Added the following monitoring metrics to the
information_
view:schema. mv_ bottomless_ status_ extended NUM_
,SUCCESS_ API_ REQUESTS NUM_
,FAILED_ API_ REQUESTS LATEST_
,API_ FAILURE_ RATE AVERAGE_
,API_ LATENCY_ US IS_
,GC_ RUNNING NUM_
, andREMOTE_ FILES_ DELETED NUM_
.SLOW_ DOWNS -
Bugfix: Fixed a crash that occurred when spilling a hash join operation with at least 3 tables.
-
Bugfix: Fixed a crash that occurred when running the
SHOW CREATE PROJECTIONS
command when using the database name in the syntax (SHOW CREATE PROJECTIONS database_
).name. projection_ name. . . -
Bugfix: Fixed an issue with incorrect results in
information_
when filtering on theschema. PROJECTIONS PROJECTION_
column.NAME -
Enhancement: Improved performance related to
PIPELINES_
information schema table.BATCHES -
Enhancement: An engine variable
enable_
has been added to allow the query optimizer to use stale statistics instead of querying for statistics during optimization.use_ of_ stale_ incremental_ stats -
Bugfix: Fixed an issue where histograms are built from up to 10x more rows than desired.
2024-05-28 Version 8.5.22
-
Enhancement: Added
STORAGE_
andID COMPUTE_
toID INFORMATION_
,SCHEMA. TABLE_ STATISTICS COLUMNAR_
, andSEGMENTS MV_
.COLUMNSTORE_ FILES -
Bugfix: Fixed a crash issue with
JSON_
.TO_ ARRAY Disabled JSON_
TVF join optimization if query does not use the TVF output column.TO_ ARRAY The crash specifically occurs when
JSON_
join optimization is triggered and when there is no usage ofTO_ ARRAY table_
output of thecol TABLE(JSON_
statement in the evaluation of the query.TO_ ARRAY()) For example, prior to this fix:
The following query will crash (because the
table_
output of thecol TABLE(JSON_
statement is unused):TO_ ARRAY(t. json)) SELECT t.a FROM t JOIN TABLE(JSON_TO_ARRAY(t.json)) GROUP BY 1;The following query will NOT crash:
SELECT table_col::a::b, t.a FROM t JOIN TABLE(JSON_TO_ARRAY(t.json)) GROUP BY 1, 2; -
Enhancement: Added more information to filesystem error messages.
2024-05-21 Version 8.5.21
-
Bugfix: Fixed an issue in
ALTER TABLE
when adding a computed column containingJSON_
.BUILD_ OBJECT -
Bugfix: Addressed a crash issue with
REGEX_
.REPLACE
2024-05-16 Version 8.5.20
-
Bugfix: Reduced stack usage during compilation for some
CASE
expressions with manyWHEN-THEN
statements. -
Bugfix: Fixed a potential deadlock issue between background garbage collector threads and foreground query execution threads.
-
Bugfix: Fixed a collation issue in the
JSON_
information schema table.COLUMN_ SCHEMA -
Enhancement: SingleStore now supports module eviction of idle tables with an
ALTER
history.This means that, prior to the 8. 5. 20 release, tables that had been altered could not be evicted. Altered here includes CREATE INDEX
,ALTER TABLE ADD COLUMN
, and some others.
2024-05-07 Version 8.5.19
-
Bugfix: Fixed a bug with Wasm UDFs where
REPLACE FUNCTION
did not correctly evict from the plancache, causing continued usage of the old UDF after replacement.
2024-04-30 Version 8.5.18
-
Bugfix: Fixed an upgrade issue present in version 8.
5. 17. -
Bugfix: Fixed a BSON issue that could occur when large documents are read and mistakenly reported as corrupted.
-
Enhancement: Upgraded OpenSSL 1.
0. 2u to 1. 0. 2zj -
Bugfix: Fixed a crash issue that could occur under a rare race condition in some distributed join queries.
-
Bugfix: Fixed statement atomicity in transactions writing to tables that have projections on them.
-
Enhancement: Allow Kerberos users to skip password validation for users who are authenticated with plugins.
2024-04-23 Version 8.5.17
Warning
Version 8.
-
Enhancement: Added support for loading data from compressed Avro datafiles.
-
Bugfix: Fixed an issue that occurred when primary key is NULLABLE when copying a table using "Create table as select" statement.
-
Enhancement: Added a new engine variable,
enable_
.extended_ types_ metadata Used to enable the handling of extended data types that are not defined in MySQL enum_
.field_ types Default is disabled. When enabled, SingleStore may send extended metadata to the client. It provides the ability to distinguish between different data types, and handle them appropriately in client applications. -
Bugfix: Addressed a crash issue occurring while executing queries with vector builtins on clusters running via Docker containers on Mac machines equipped with Apple silicon processors (M1).
-
Bugfix: No longer show information_
schema pipeline metadata of databases that are not attached to the workspace. -
Enhancement: Use SeekableString encoding by default for storing VECTOR datatype columns in columnstore tables.
-
Bugfix: Fixed an issue that caused rare "Arrangement already exists in namespace" errors in recursive CTE queries.
-
Bugfix: Improved the hashGroupBy spilling condition to trigger (spill) when appropriate.
2024-04-18 Version 8.5.16
-
Enhancement: Added a new engine variable
costing_
which sets the maximum amount of tables we allow in full DQO estimate search when filling table row estimates for distributed join hints.max_ djo_ tables
2024-04-08 Version 8.5.15
-
Enhancement: Made many more engine variables configurable on SingleStore Helios:
multi_
insert_ tuple_ count, columnstore_ row_ value_ table_ lock_ threshold, internal_ columnstore_ max_ uncompressed_ blob_ size, internal_ columnstore_ max_ uncompressed_ rowindex_ blob_ size, columnstore_ validate_ blob_ before_ merge, default_ max_ histogram_ buckets, enable_ varbuffer_ dictionary_ compression, enable_ alias_ space_ trim, skip_ segelim_ with_ inlist_ threshold, default_ autostats_ histogram_ mode, default_ autostats_ columnstore_ cardinality_ mode, default_ autostats_ rowstore_ cardinality_ mode, default_ autostats_ columnstore_ sampling, experimental_ disable_ multipartition_ parallel_ read, internal_ enable_ parallel_ query_ throttling, enable_ spilling, spilling_ node_ memory_ threshold_ ratio, spilling_ query_ operator_ memory_ threshold, regexp_ compile_ mem_ mb, selectivity_ estimation_ min_ sample_ size, repartition_ minimum_ buffer_ size, use_ seekable_ json, json_ document_ max_ children, json_ document_ max_ leaves, json_ document_ sparse_ children_ check_ threshold, json_ document_ sparse_ children_ check_ ratio, json_ document_ absolute_ sparse_ key_ check_ ratio, json_ document_ page_ data_ soft_ limit, ignore_ insert_ into_ computed_ column, max_ subselect_ aggregator_ rowcount, leaf_ pushdown_ enable_ rowcount, reshuffle_ group_ by_ base_ cost, max_ broadcast_ tree_ rowcount, enable_ broadcast_ left_ join, display_ full_ estimation_ stats, force_ bushy_ joins, force_ heuristic_ rewrites, force_ table_ pushdown, force_ bloom_ filters, explain_ joinplan_ costs, statistics_ warnings, optimizer_ warnings, optimize_ constants, optimize_ huge_ expressions, optimize_ expressions_ larger_ than, optimize_ stmt_ threshold, quadratic_ rewrite_ size_ limit, batch_ external_ functions, batch_ external_ functions_ size, optimizer_ enable_ json_ text_ matching, optimizer_ enable_ orderby_ limit_ self_ join, distributed_ optimizer_ broadcast_ mult, distributed_ optimizer_ old_ selectivity_ table_ threshold, distributed_ optimizer_ selectivity_ fallback_ threshold, distributed_ optimizer_ verbose, old_ local_ join_ optimizer, optimizer_ hash_ join_ cost, optimizer_ merge_ join_ cost, optimizer_ nested_ join_ cost, optimizer_ disable_ right_ join, interpreter_ mode_ sampling_ threshold, hash_ groupby_ segment_ distinct_ values_ threshold, sampling_ estimates_ for_ complex_ filters, enable_ histogram_ to_ unwrap_ literals, estimate_ zero_ rows_ when_ sampling_ data_ is_ missing, exclude_ scalar_ subselects_ from_ filters, leaf_ pushdown_ default, distributed_ optimizer_ nodes, optimizer_ num_ partitions, enable_ binary_ protocol, enable_ multipartition_ queries, enable_ local_ shuffle_ group_ by, enable_ skiplist_ sampling_ for_