Maintenance Release Changelog v8.9

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_disable_subselect_to_join_cte_preprocess which can be used to disable the subselect to join rewrite for CTE preprocessing before inlining or materialization.

2025-03-19 Version 8.9.15

  • Bugfix: Reserved memory space for segment_id in the pseudo column's MemoryFile.

  • 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_enable_merge_unioned_queries_rewrite which can be used to enable or disable the rewrite that merges union queries. 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_TO_ARRAY optimization is run against non-nullable JSON columns.

2025-03-11 Version 8.9.13

  • Enhancement: Added aggregator activity stats in Query_completion event tracing. Refer to Query History for details.

  • Enhancement: Added the ability for a user to change the login password when the variable password_expiration_mode is set to LIMITED_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 or SET 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_foreign_keys is ON and the ALTER TABLE command is used to add a foreign key.

  • Bugfix: Changed the output projection DDL to CREATE PROJECTION  instead of CREATE TABLE _$_table_name_$ _ in debug profile.

  • 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_plan_gc_pause_seconds_on_startup that disables disk plan garbage collection on startup. This variable prevents hot plans from being unintentionally disk garbage collected.

  • Enhancement: Added an internal allocator Alloc_connection_context which tracks certain per-connection allocations that were previously tracked using the standard allocator.

  • 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 and ALTER 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 wrapping JSON_EXTRACT function in a TABLE(JSON_TO_ARRAY()) join.

  • 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_ARRAY_CONTAINS_STRING query rewrite for query shapes with the 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 the pipelines_errors_retention_minutes limit is reached.

  • Enhancement: Improved performance of OBSERVE queries on columnstore tables.

  • Enhancement: Improved performance of OBSERVE queries by only decoding primary key or internal ID columns for columnstore segment deletes.

  • Enhancement: OBSERVE queries no longer block DDL operations while reading columnstore segments.

  • Enhancement: OBSERVE queries no longer require timeouts to prevent blocking database drop operations.

  • Enhancement: Added a new engine variable scheduler_slow_threshold_seconds that specifies the threshold for triggering the verbose logging of scheduler thread timing.

  • Enhancement: Added a new engine variable scheduler_slow_ready_queue_seconds that specifies the threshold for triggering logging of slow ready queue draining.

  • 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.

  • Bugfix: Fixed an issue that occurred when OBSERVE query was run on columnstore tables after ALTER operations.

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_TO_ARRAY(... joins introduced in version 8.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_iceberg_data_workers_heap_size to control memory consumption on leaves.

  • Enhancement: Introduced new JSON_BUILD_ARRAY function.

  • Enhancement: Introduced support for placeholders for partition ID and timestamp in the SELECT INTO ... file name command.

  • Bugfix: Fixed a bug causing accumulation of .rem files on disk.

  • Bugfix: Fixed a small memory bug in columnstore scans that use the JSON_TO_ARRAY join optimization.

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_ARRAY_CONTAINS_<type> predicates.

  • 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 multiple IN-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_PRODUCT metric.

  • Bugfix: Added an optional 'swap_time' argument to UUID_TO_BIN and BIN_TO_UUID functions.

  • Bugfix: Allowed cached table memory to be freed for empty tables in replica databases.

  • Bugfix: Fixed a lateral join parsing bug.

Last modified: March 26, 2025

Was this article helpful?

Verification instructions

Note: You must install cosign to verify the authenticity of the SingleStore file.

Use the following steps to verify the authenticity of singlestoredb-server, singlestoredb-toolbox, singlestoredb-studio, and singlestore-client SingleStore files that have been downloaded.

You may perform the following steps on any computer that can run cosign, such as the main deployment host of the cluster.

  1. (Optional) Run the following command to view the associated signature files.

    curl undefined
  2. Download the signature file from the SingleStore release server.

    • Option 1: Click the Download Signature button next to the SingleStore file.

    • Option 2: Copy and paste the following URL into the address bar of your browser and save the signature file.

    • Option 3: Run the following command to download the signature file.

      curl -O undefined
  3. After the signature file has been downloaded, run the following command to verify the authenticity of the SingleStore file.

    echo -n undefined |
    cosign verify-blob --certificate-oidc-issuer https://oidc.eks.us-east-1.amazonaws.com/id/CCDCDBA1379A5596AB5B2E46DCA385BC \
    --certificate-identity https://kubernetes.io/namespaces/freya-production/serviceaccounts/job-worker \
    --bundle undefined \
    --new-bundle-format -
    Verified OK