Maintenance Release Changelog v8. 9
On this page
2025-06-18 Version 8. 9. 27
-
Bugfix: Fixed the predicate pushdown logic for materialized common table expressions.
-
Bugfix: Fixed an issue where periodic autostat was disabled when it should not have been.
2025-06-13 Version 8. 9. 26
-
Bugfix: Fixed crash in lockfree hashtable when engine is under high memory pressure.
Report out of memory error instead.
2025-06-09 Version 8. 9. 25
-
Enhancement: Users with database visibility can now query the
*_
information schema views in the respective database.BOTTOMLESS_ * CLUSTER
permissions are no longer enforced for querying these views. -
Enhancement: Improved the error message for parameter count mismatch during query parsing.
-
Enhancement: Disabled segment elimination for
IN
clauses for which the left-hand expression is not a table column. -
Bugfix: Fixed a leak in a rare scenario.
-
Bugfix: Fixed the
ER_
error onBAD_ TABLE_ ERROR UPDATE
orDELETE
queries with a specific shape. -
Bugfix: Fixed a crash in a shallow copy of a table with a pending
ALTER
operation. -
Bugfix: Fixed a bug in CTE query rewrites.
-
Bugfix: Fixed a potential replay failure on a table that uses full-text version 2.
-
Bugfix: Fixed an issue where
IN
-list factorization did not work with newline characters around theIN
-list.
2025-05-21 Version 8. 9. 24
-
Enhancement: Extended a rewrite to allow merging derived tables with json functions.
-
Enhancement: Changed the default blob cache size to 75% of the total disk for small disk config.
-
Enhancement: Enabled rewriting correlated subselects that depend on more than one outer table with conditions other than equality.
-
Enhancement: Prevented the destination table from being replaced by projection on update or delete.
-
Enhancement: Renamed GIN index to Multi-Value Hash Index.
GIN keyword deprecated. -
Bugfix: Fixed a bug that caused filter-aware optimizations to not be applied above MCTE when involved in hash joins.
-
Bugfix: Fixed a bug that occurred when CTEs are rewritten.
2025-05-13 Version 8. 9. 23
-
Enhancement: Enable the use of the
MATCH_
tokenizer option with underscores in GIN index settings.ANY -
Enhancement: Added support for parameterized
IN
-lists in BSON GIN index optimization enabling improved performance for queries with same-type constant literals and one-argument built-in expressions.Previously limited to hex literals. -
Enhancement: New variables (Note, these should only be set with guidance from SingleStore):
-
repl_
: limits the number of page descriptors in the page map that a 'ReplLog' can use before stalling new txs.page_ desc_ limit_ before_ stall See 'ReplLog::StallForPageMap'. The default 256K page desciptor limit means the hash table will not have load greater than 4. -
repl_
: limits the number of IO buffers that a 'ReplLog' can use before stalling new txs.io_ buffer_ limit See 'ReplLog::StallForPageMap'. 128 IO buffers is 16MB since each IO buffer is 128K. -
[dr_
: replication tries to set both send and receive buffer sizes to reduce waits on TCP ack packets.]repl_ network_ buffer_ size 8MB is a sane battle-tested value. Can be set for both DR and non-DR replicas. -
[dr_
: when sending logs or snapshots to a replica limits chunk size to this value.]repl_ max_ chunk_ size Too long of a chunk increases the chance of timeout waiting for the replica's response packet (since the replica must process the entire chunk before acking). This defaults to 8MB - a sane limit chunk size to this value. Maximum value is 1GB and it must be divisible by 128kb so it is a multiple of io buffer size. Can be set for both dr and non-DR replicas.
-
-
BugFix: Fixed resource pool and workload management CPU limiting.
-
BugFix: Fixed an isue to use full table scan instead of vector index scan if enough rows are not produced.
-
BugFix: Fixed a wrong results bug in
JSON_
() join queries where the quotes on strings were incorrectly removed.TO_ ARRAY -
BugFix: Fixed a rare deadlock involving temp tables.
2025-05-06 Version 8. 9. 22
-
Enhancement: Added more metrics to the views,
MV_
andCLOUD_ PER_ COMPUTE_ REMOTE_ STATS MV_
, for tracking of retention log chunks and snapshots.CLOUD_ PER_ STORAGE_ REMOTE_ STATS -
Enhancement: Added support for stopwords
token_
for custom analyzers for FTS VERSION 2.filter -
BugFix: Fixed invalid optree from rewrite on union queries matching a very specific shape.
2025-04-30 Version 8. 9. 21
-
Enhancement: Added estimates for query memory usage based on static row count and row size estimates to improve Workload Manager (WM) memory management.
-
Enhancement: Added support to the GIN Index for BSON for expressions, built-in functions, user-defined variables (UDVs), and typecasting.
User-defined functions (UDFs) and non-deterministic built-in functions, such as rand(), remain unsupported. -
Bugfix: Fixed an issue that could lead to undefined behavior when a node failed concurrently with the computation of the replication distribution tree.
-
Bugfix: Fixed a
NULL
value inline bug by adding typecast operations above the referencing field. -
Bugfix: Fixed an issue where a node that had not been upgraded could trigger undefined behavior if the node's
processlist
was queried while the node was processing an internal RPC.
2025-04-22 Version 8. 9. 20
-
Enhancement: Added a
KILL
option for theDETACH DATABASE
command.
2025-04-14 Version 8. 9. 19
Warning
On account of how logs are now captured in SingleStore versions 8.
-
Downgrading from SingleStore versions 8.
9. 19 and later to SingleStore versions 8. 9. 18 and earlier -
Restoring backups from SingleStore versions 8.
9. 19 and later to SingleStore versions 8. 9. 18 and earlier
-
Enhancement: Improved optimization speed of parameterized
IN
-lists by limiting traversal depth. -
Enhancement: Added support for delimited batch sets in external functions.
-
Enhancement: High Availability for the Master Aggregator (HA for MA) is now enabled exclusively for Enterprise edition.
-
Enhancement:
OPTIMIZE TABLE .
is now more responsive to. . INDEX KILL QUERY
statements. -
Bugfix: Fixed a bug that caused
DROP DATABASE
to hang in a rare condition. -
Bugfix: Fixed an issue that returned wrong results in pipelines in a rare race condition.
-
Bugfix: Fixed an issue that caused a crash when a query referenced too many tables.
-
Bugfix: Changed options for loading libpam.
so. -
Bugfix: Fixed a race condition that caused
DETACH DATABASE
to hang. -
Bugfix: Fixed a buffer overflow issue that occurred while de-parameterizing a multi-column
IN
-list filter. -
Bugfix: Fixed an issue to prevent LRU eviction from stalling when several table modules are stale.
-
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: Disabled vector range search filter during
JOIN
s to avoid an engine crash.
2025-04-01 Version 8. 9. 18
-
Enhancement: General improvements and optimizations for
CHECK BOTTOMLESS CHECKSUM
command. -
Enhancement: Added support for JSON arrays in pipelines loading JSON files.
Each JSON record in the array is loaded as a separate row. -
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 a crash caused by libgcc btree bug.
-
Bugfix: Reduced contention on a global lock controlling modules, affecting code loading and unwinding of exceptions.
-
Bugfix: Removed garbage collection from cleaning up arrangements when such garbage collection is already in process.
2025-03-26 Version 8. 9. 17
-
Bugfix: Fixed an issue impacting creating or altering a resource pool with a CPU percentage limitation after a MA failover.
2025-03-23 Version 8. 9. 16
-
Bugfix: Fixed CTE subselect to join preprocessing in the
INTERSECT
/EXCEPT
CTE case. -
Enhancement: Added an engine variable
optimizer_
which can be used to disable the subselect to join rewrite for CTE preprocessing before inlining or materialization.disable_ subselect_ to_ join_ cte_ preprocess
2025-03-19 Version 8. 9. 15
-
Bugfix: Reserved memory space for
segment_
in the pseudo column's MemoryFile.id -
Bugfix: Fixed a bug that occurred when a query used
I0
as a column name. -
Bugfix: Fixed a crash that was due to an issue with the rewrite that merges union queries.
-
Enhancement: Added an engine variable
optimizer_
which can be used to enable or disable the rewrite that merges union queries.enable_ merge_ unioned_ queries_ rewrite This variable is ON
by default.
2025-03-19 Version 8. 9. 14
-
Enhancement: Added support for the
LIMIT
clause in prepared statements. -
Enhancement: Added an option to run queries that failed asynchronous compilation, allowing users to introspect the compilation results.
-
Bugfix: Fixed an issue to prevent a crash when
JSON_
optimization is run against non-nullable JSON columns.TO_ ARRAY
2025-03-11 Version 8. 9. 13
-
Enhancement: Added aggregator activity stats in
Query_
event tracing.completion Refer to Query History for details. -
Enhancement: Added the ability for a user to change the login password when the variable
password_
is set to LIMITED_expiration_ mode ACCESS. Now the user is allowed to login even after the password expires but can only execute commands that update the password such as ALTER USER
orSET PASSWORD
. -
Enhancement: Added a password expiry warning message that is raised each time the user executes a query.
This warning starts appearing 14 days before the password actually expires. -
Enhancement: Added auditlogging mode for only the root user.
It is a startup-only variable similar to other audit logging configuration variables and should be set along with the auditlog_
.level -
Bugfix: Fixed a bug that caused a node to crash when the variable
ignore_
isforeign_ keys ON
and theALTER TABLE
command is used to add a foreign key. -
Bugfix: Changed the output projection DDL to
CREATE PROJECTION
instead ofCREATE TABLE _
in debug profile.$_ table_ name_ $ _ -
Bugfix: Fixed an issue where DDL statements that were concurrent with PROMOTE AGGREGATOR TO MASTER did not get forwarded to the new Master Aggregator.
-
Bugfix: Fixed a bug to prevent a crash when using FTS v2 with CTE.
2025-03-05 Version 8. 9. 12
-
Bugfix: Fixed a bug that caused incorrect results when running
INFER PIPELINE CSV
. -
Bugfix: Fixed a rare deadlock occurring when DETACH DATABASE is run.
2025-02-25 Version 8. 9. 11
-
Enhancement: Added an engine variable
disk_
that disables disk plan garbage collection on startup.plan_ gc_ pause_ seconds_ on_ startup This variable prevents hot plans from being unintentionally disk garbage collected. -
Enhancement: Added an internal allocator
Alloc_
which tracks certain per-connection allocations that were previously tracked using the standard allocator.connection_ context -
Bugfix: Fixed a crash that occurred when aggregator functions are used with
VECTOR
type data inside other built-ins. -
Bugfix: Fixed the
userDictionary
parameter for the korean full-text tokenizer.
2025-02-11 Version 8. 9. 10
-
Enhancement: Added a vector index cache to limit the amount of memory used by vector indexes.
Refer to Vector Indexing for details. -
Enhancement: Extended the VECTOR_
SUM aggregate function to support the VECTOR
data type. -
Enhancement: Computed column definitions now support the
SPLIT
function. -
Enhancement: The
DROP
andALTER TABLE
commands no longer have to wait for the plan garbage collector. -
Bugfix: Fixed a crash occurring when a table-valued function (TVF) column is used in a
WHERE
clause without a wrappingJSON_
function in aEXTRACT TABLE(JSON_
join.TO_ ARRAY()) -
Bugfix: Fixed a bug that caused CDC-in pipelines to fail while inferring the table schema, with the "Failed to allocate slot in the extractor pool" error.
-
Bugfix: Fixed a deadlock between
ALTER
and failover in a rare race condition. -
Bugfix: Fixed a critical issue where clusters were failing to connect to AWS remote storage due to CURL request timeouts.
-
Bugfix: Fixed a bug where a CDC pipeline gets stuck while waiting for data.
2025-02-04 Version 8. 9. 9
-
Bugfix: Fixed a bug that prevented proper error handling on socket timeout.
-
Bugfix: Fixed a bug in
JSON_
query rewrite for query shapes with theARRAY_ CONTAINS_ STRING LIMIT
clause. -
Bugfix: Fixed support for plan pinning in
IN
list factorization.
2025-01-28 Version 8. 9. 8
-
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 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 -
Bugfix: Fixed network connectivity performance issues impacting BYOC clusters communicating with the remote storage.
-
Bugfix: Fixed a bug in lateral join to preserve projection field aliases for lateral join subselects.
2025-01-14 Version 8. 9. 7
-
Enhancement: Improve behavior of garbage collection for plancache.
-
Bugfix: Fixed a bug caused by using a (cross-segment) vector index (Vector Indexing) with null vectors.
Users on prior 8. 9 versions will need to recreate (drop and add) vector indexes for this fix to be effective as the cross-segment indexes are built in the background.
2025-01-12 Version 8. 9. 6
-
Bugfix: Fixes a data-dependent crash condition occurring in certain
TABLE(JSON_
joins introduced in version 8.TO_ ARRAY(. . . 9.
2025-01-07 Version 8. 9. 5
-
Enhancement: Added new nori (Korean) analyzer customizations for Full-Text Search V2.
-
Enhancement: Added support for updated Standard and Enterprise licenses.
-
Enhancement: Added logging for LRU compiled unit eviction.
-
Enhancement: Fixed out of memory (OOM) errors and extra memory usage in Iceberg ingest.
Introduced global engine variable pipelines_
to control memory consumption on leaves.iceberg_ data_ workers_ heap_ size -
Enhancement: Introduced new JSON_
BUILD_ ARRAY function. -
Enhancement: Introduced support for placeholders for partition ID and timestamp in the
SELECT INTO .
command.. . file name -
Bugfix: Fixed a bug causing accumulation of .
rem files on disk. -
Bugfix: Fixed a small memory bug in columnstore scans that use the
JSON_
join optimization.TO_ ARRAY
2024-12-17 Version 8. 9. 4
-
Bugfix: Fixed a crash in
JSON_
.EXTRACT_ STRING -
Bugfix: Fixed a bug with updates and asserts using
JSON_
predicates.ARRAY_ CONTAINS_ <type> -
Bugfix: Fixed bottomless upload throttling criteria.
-
Bugfix: Blocked creation of temporary table as a shallow copy.
-
Bugfix: Resolved an issue where an in-development subsystem can leak files on disk
2024-12-12 Version 8. 9. 3
-
Enhancement: Added Korean language analyzer for full-text search V2.
-
Enhancement: Added support to infer CSV files with a single column when the file contains no field terminators in any record.
-
Enhancement: Relaxed dependency on partition count of leaf nodes for leaf plans.
-
Bugfix: Fixed handling of heartbeat messages in the MongoDB® extractor in debug mode.
-
Bugfix: Fixed display of default BSON and string values with null-terminators in the information schema.
-
Bugfix: Removed trailing dot for decimal column types that have scale equal to 0.
-
Bugfix: Fixed
IN
-list index matching for columnstore tables when a query has multipleIN
-list predicates. -
Bugfix: Fixed a bug that caused an invalid optree error after the
JsonArrayContainsToTableBuiltin
rewrite.
2024-11-27 Version 8. 9. 2
-
Bugfix: Fixed a crash that occurred during spilling when executing a query with a large number of
GROUP BY
columns. -
Bugfix: Fixed performance regression in Vector Search when using
DOT_
metric.PRODUCT -
Bugfix: Added an optional 'swap_
time' argument to UUID_
andTO_ BIN BIN_
functions.TO_ UUID -
Bugfix: Allowed cached table memory to be freed for empty tables in replica databases.
-
Bugfix: Fixed a lateral join parsing bug.
Last modified: June 18, 2025