Maintenance Release Changelog

2024-04-18 Version 8.0.33

  • Fixed a case where a killed query could incorrectly return a JSON error rather than query interrupted message.

  • MV_DISK_USAGE queries can no longer block garbage collection.

  • Fixed a JSON insertion failure to old utf8 sample tables that contain utf8mb4 characters by encoding it with base64 format beforehand for backward compatibility.

  • Fixed an issue with a blob file leak in a rare crash scenario.

  • Fixed a potential deadlock in a scenario involving DDL, a 2PC transaction, and a concurrent failover.

  • Updated timezone data, now using IANA's tzdata version 2024a; new timezones Kyiv, Ciudad_Juarez, and Kanton supported.

2024-03-13 Version 8.0.32

  • Fixed an issue in background merger that allowed concurrent deletes of empty segments.

  • Added the ability to collect and send SingleStore Self-Managed usage telemetry data to SingleStore via the EXPORT TELEMETRY sql command (for 1-time or ad hoc use) or the send_usage_telemetry engine variable. This defaults to OFF. Added an associated information schema table: usage_telemetry_status

  • Added spilling metrics for TopSort (ORDER BY with LIMIT).

2024-02-27 Version 8.0.31

  • Added new metrics to memsql_exporter based on the information_schema.mv_sysinfo_disk columns.

  • Fixed an issue with a sensitive information leak inside of out-of-memory reports.

  • Fixed a bug in backup restore when the backup has a corrupted GV timestamp in the about snapshot record.

  • Fixed an issue with hex() not handling decimal types correctly.

  • Fixed an issue with exporter not working with Public-Key Cryptography Standards #8(PKCS#8) pem format.

  • Fixed a crash that occurred when trying to grant access to the table with no context database in per-privilege mode.

  • Added ability to memsql_exporter to always return all sub-activities of an aggregator activity.

  • Fixed an issue with backups not throttling after snapshot.

  • Fixed an optimization phase out-of-memory issue caused by operators generated for an unused wide user table.

  • Appended column name to include the error message when an invalid date/time is inserted into a column.

  • Fixed an issue to show the number of rows affected with SELECT INTO object storage.

  • Resolved an issue related to FROM_BASE64 and TO_BASE64 built-ins when processing large string inputs, preventing potential errors in reading communication packets.

  • Increased backup_multipart_upload_concurrency max value to 15.

  • Improved the backup download errors.

  • Fixed an issue where INSERT...SELECT queries with a partition_id() filter generating an error.

  • Fixed an issue with memory crashing when using REGEXP_MATCH, JSON_INCLUDE_MASK, or JSON_EXCLUDE_MASK built-ins.

  • Fixed an issue with START PIPELINE FOREGROUND skipping files in some circumstances.

2024-01-17 Version 8.0.30

  • Fixed an allocation issue that caused poor performance on high load insertion queries.

  • Fixed an issue with memsql_exporter working improperly in ANSI_QUOTES sql_mode.

  • Added the optimizer_disable_transitive_predicates engine variable which disables predicate transitivity on query rewrites if set to TRUE. This engine variable defaults to FALSE.

  • ALTER PIPELINE setting max_partitions_per_batch to use a default 0 value is now allowed.

  • JSON_KEY escape characters were not working as expected.

  • Updated the information_schema.USERS view to reflect the account status for locked users.

  • Fixed a crash that occurred when user-defined variables are used in the GROUP BY and ORDER BY clauses.

  • Fixed an error that occurred when a user attempts to access a view that is based on a table that has no privileges granted on it.

  • Added support for creating a DEEP COPY of tables with computed columns.

  • Improved the ability to kill queries containing JSON built-in functions.

2023-12-05 Version 8.0.29

  • Fixed an issue where the wrong table was dropped while creating a DEEP COPY with computed columns.

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

  • 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 JSON_SET_JSON used in UDFs.

  • Fixed a potential issue related to hash join spilling.

  • Reduced blocking in query compilation after evicting many (10K+) plans in the plancache.

  • 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_COUNT_DISTINCT_ACCUMULATE erroneously included nulls in the count.

  • Added additional node metrics to the /cluster-metrics endpoint of the memsql_exporter.

  • Added three new fields to MV_SYSINFO_DISK:

    • READ_OPERATIONS_CUMULATIVE_PER_DEVICE: Number of read operations performed by the device since start up.

    • WRITE_OPERATIONS_CUMULATIVE_PER_DEVICE: Number of write operations performed by the device since start up.

    • DEVICE_NAME: Name of the device to which the values in read_operations_cumulative_per_device and write_operations_cumulative_per_device are associated.

  • 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_caches_update_mode engine variable.

    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:

    1. Set the value to never.

    2. Perform the operations.

    3. Set the value back to always.

2023-10-17 Version 8.0.27

  • Reverted the ability to use SSL keys with a password in the HTTP API.

2023-10-11 Version 8.0.26

  • Added ability to use SSL keys with a password in the HTTP API.

  • Added resource pool metrics to the cluster-metrics endpoint of the memsql_exporter.

  • Fixed an issue where unlimited storage databases stored on Amazon S3 could run out of connections under intense loads.

  • Fixed an issue where an incorrect result is produced when the engine variable query_parallelism is set with flexible_parallelism. query_parallelism is deprecated and query_parallelism_per_leaf_core should be used instead.

  • Removed an unexpected warning related to the engine variable query_parallelism (which is deprecated) when a query contains an ORDER BY clause with an IN list filter that matches the table's shard key.

2023-09-11 Version 8.0.25

  • Fixed a bug where an aggregator result table hits a lockdown when sql_select_limit is set.

  • Fixed a memory leak issue in the memsql_exporter process.

  • Fixed an issue where memsql_exporter was generating too much "pipeline_error" data.

  • The SHOW COLUMNAR MERGE STATUS command now outputs status for tables with empty sort keys.

  • The following commands now respect non-default columnstore_table_lock_threshold values: INSERT ... SELECT ... ON DUPLICATE UPDATEREPLACE ... SELECT, and REPLACE ... LOAD.

  • Fixed an issue where VECTOR_MUL was returning incorrect results on shard tables.

  • Fixed an issue where LIMIT and OFFSET after a window function with no PARTITION BY clause were returning incorrect information.

2023-08-22 Version 8.0.24

  • Improved performance of multi-part GCS backups.

  • Increased mv_plancache.activity_name from varchar(64) to varchar(512).

  • Fixed a potential crash in NFS backup when encountering an IO error.

  • SKIP PARSER ERRORS is now supported for Kafka. Additionally, a new related engine variable, pipelines_parse_errors_threshold, has been added.

  • Fixed an issue with significant memory reduction from spilling for hash join queries with variable length strings (varchar, text, etc.) involved.

  • Fixed a memory leak when using backreferences inside regexp built-ins (e.g. `regexp_substr()`).

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

  • SingleStore now supports in-place change of the data_conversion_compatibility_level for persisted computed column shard keys. We still suggest testing any existing applications before deploying a change to a production environment.

2023-07-25 Version 8.0.23

  • Added metrics to memsql_exporter to show a breakdown of disk usage by SingleStore.

  • Added metrics to memsql_exporter to show unlimited storage utilization statistics.

  • Fixed a JSON formatting issue with the MV_EVENTS info schema table.

  • Fixed a potential issue where changing a user password would not change the connection pool password in the Data API.

  • Fixed a bug where the mv_disk_usage table would show incorrect results for the plancache directory.

  • Fixed an issue where creating a TEMP table with a PERSISTED column would result in an ER_TABLEACCESS_DENIED_ERROR.

  • Reverted the performance improvements for backups to GCS (Google Cloud Storage).

  • Fixed a bug for the statistic blob_fetch_network_time value.

  • Fixed a performance bug regarding the prefetch queue's size when flexible parallelism is enabled. The prefetch queue's size was increased from 10 to 10 times the number of scanning threads to improve query performance.

  • Fixed an issue with the incremental restore of an unlimited database that would fail if the restore was larger than the disk.

  • Fixed a pipeline wrong state issue caused by an error in a table with a computed column.

  • Added support for Control Group v2 (cgroup v2).

  • Fixed an issue where a large spike in the query memory consumption on a any SingleStore node could cause replicas on the same node to become unrecoverable.

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

2023-06-26 Version 8.0.22

  • Fixed a rare case where the query optimizer re-wrote a query into a non-equivalent query which produced more result rows.

  • Improved the performance of backups to GCS (Google Cloud Storage). GCS backups are not using multi-part uploads.

  • Fixed a crash that could occur if Linux refused to start a thread due to hitting a system limit on threads.

  • Introduced an optimizer feature where a single sharded table may be gathered to the optimizer in order to reduce duplicate work across partitions. Two new engine variables were added to control this behavior: optimizer_min_reference_tables_for_gathered_join and optimizer_min_reference_rows_for_gathered_join.

  • Fixed an issue on sample tables that can be created with different collations on different partitions.

  • Added the max_execution_time engine variable. 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 SingleStore.

  • Added mv_disk_usage and mv_data_disk_usage information schema tables that report the breakdown of disk utilization by SingleStore.

  • PAM (Pluggable Authentication Module) users are now allowed to start and configure the memsql_exporter process.

  • Added support for ROW_COUNT information function within views.

  • Fixed a bug where a HashJoin on a materialized CTE gets executed as a NestedLoopJoin 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_fetch_network_time statistic in query profiles.

2023-06-06 Version 8.0.21

  • Fixed unlimited storage S3 multipart uploads to properly retry on 200 responses which contain an embedded "SlowDown" error, instead of failing immediately.

  • Reduced memory usage in situations where tables are repeatedly created and dropped.

  • Fixed an issue where memory accumulates over time if reshuffle or repartition operators are executed for many unique query shapes.

  • Introduced a new global engine variable backup_multipart_upload_concurrency that can be used to improve blobstore backup performance. The default value (3) can improve performance out of the box.

  • 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_reference_table_leftjoin_where_pushdown must be set to "OFF" to enable this operation.

  • Fixed the query_text output in profiles generated while the profiled query is executing.

  • Fixed an issue where the query optimizer could choose incorrectly between using the HashGroupBy or the StreamingGroupBy operators.

  • Fixed an issue where JSON computed column matching incorrectly triggers a JSON_EXTRACT_<type> function.

  • Fixed a STR_TO_DATE function bug when used with '%T' or '%r' in the format string.

  • Fixed a rare log file corruption issue with sync durability in unlimited storage databases.

  • Fixed an issue with handling a query that contains a common table expression (CTE) in a CREATE VIEW statement that has multiple UNION operators.

2023-05-17 Version 8.0.20

  • Added cross-database support for Recursive CTEs.

  • Fixed a bug where DEFAULT NOW/UUID/SYS_GUID is sometimes ignored when specified on a column in the primary key.

  • Fixed an issue where JSON_INCLUDE_MASK built-in returns a document with all fields, instead of zero fields for an empty mask '{}' case.

  • Added ability to JSON_MATCH_ANY() to receive the columnstore optimization even if the entire JSON column is projected in the query.

  • Fixed a crash caused by reusing plancache for a deleted link.

2023-05-01 Version 8.0.19

  • Fixed an issue with DATETIME columns with ON UPDATE CURRENT_TIMESTAMP defaults that could cause incorrect results.

  • The sql_mode session variable now shows up in SHOW VARIABLES and the mv_global_variables view.

  • Fixed an issue that could cause an incorrect error message to be generated on an out of memory error.

  • Fixed an issue where a NULL could be pushed down to a union which could cause the type-cast/collation to be lost, resulting in an error: "Operation 'Scanning a hash join build' is not allowed".

2023-04-25 Version 8.0.18

  • Fixed an issue where errors could occur during backup when large files are copied.

  • Fixed an issue where S3 pipelines could stop loading data from the bucket if files are deleted from the bucket while the pipeline is active.

  • Fixed an issue where, in rare cases, an UPDATE statement with a left join in the filter clauses could fail to execute.

  • Fixed an issue where replica blobs could be loaded into the blob cache with an incorrect LRU timestamp.

  • Improvements to memsql_exporter: Improved error handling and reduced memory usage.

  • Fixed an issue with ALTER USER, and now the following syntax works as expected:

    ALTER USER user IDENTIFIED BY 'password';
  • Added  JSON_INCLUDE/EXCLUDE_MASK function when applied to a JSON document; it will return a subset of the document based on the mask.


2023-04-17 Version 8.0.17

  • Added support for LOAD DATA from S3 for Avro and Parquet data.

  • Fixed a potential crash issue in UPDATE queries that involve joins and that have scalar subselects in SET clauses.

  • Fixed an issue where running DROP PLAN FROM PLANCACHE ... FOR QUERY on a query with invalid syntax could cause a crash.

  • Updated timezone metadata to include Mexico's latest timezone change.

  • Fixed an issue where DETACH DATABASE was not killing long running queries that were blocking the database from getting detached.

  • Fixed an issue with missing row counts during optimization when sampling is disabled.

  • Fixed an issue where background mergers were not stopping quickly enough, resulting in delayed DDL operations or REBALANCE commands.

  • Fixed an issue with setting maximum_blob_cache_size_percent on a single site that could cause the blob cache to shrink incorrectly.

  • Fixed an issue where CLEAR ORPHAN DATABASE could cause data loss if run when the master aggregator has a database in an unrecoverable state.

  • Fixed an issue in information schema view JSON_COLUMN_SCHEMA where incorrect details were being shown for the leaf columns.

  • Fixed an issue where the memory used by an external function was not being freed quickly enough.

  • Fixed a column name resolution issue for recursive CTEs when the column type is the same across the base branch and the recursive branch.

2023-04-03 Version 8.0.16

  • The default_partitions_per_leaf global variable will no longer be user-settable in SingleStore Helios, ensuring that it's always defined for the most optimal performance, according to the current resource size.

  • Fixed an issue where filters using the range_stats column in the information_schema.optimizer_statistics table were not allowed.

  • Fixed an issue where incorrect results could be returned when segment-level flexible parallelism is used inside a subquery containing both a shard key filter and either an aggregate, a window function, or the limit clause.

  • Fixed an issue where an internal result table was not created for a recursive CTE involving data across databases.

2023-03-27 Version 8.0.15

  • Fixed an error that could occur when attaching databases with a snapshot file of greater than 5 GB.

  • Fixed an issue where too many rows are sampled from columnstore tables with more than 1 billion rows.

  • Fixed an issue with histogram estimation in columns with a negative value TIME type.

  • Fixed an error caused by setting the collation_server global variable to a non-default value when performing a REBALANCE PARTITIONS resource availability check.

  • Fixed "table partition count mismatch errors" that occur due to the following conditions: the system variable enable_workspace_ha is set and there is an upgraded workspace with an attached read replica.

  • Fixed an issue with DDL endpoint queries using a lower-than-specified query parallelism setting when workspaces are enabled.

  • Improved column type resolution for base and recursive branches in recursive common table expressions (CTEs).

  • Fixed an issue that prevents GROUP BY Push-Down optimization if the join filter contains a mismatched column type.

  • Fixed a data conversion compatibility level 8.0 error that may occur when sampling columnstore tables.

  • Fixed a possible deadlock that may occur between the blob cache and the Rowstore Garbage Collection (GC) when the blob cache encounters an out-of-memory error.

  • Add an information schema table (JSON_COLUMN_SCHEMA) which shows the schema inferred for JSON columns in columnstore tables.

2023-03-20 Version 8.0.14

  • Improved the parsing performance of queries that contain several tables.

  • Improved error handling when restoring from an incomplete incremental backup.

  • Improved the performance of S3 pipelines when Garbage Collection (GC) is enabled.

  • The  read_advanced_counters, snapshot_trigger_size, and  snapshot_to_keep  engine variables can now be set on SingleStore Helios.

  • Added new session variable disable_remove_redundant_gby_rewrite to prevent the GROUP BY columns from being removed when used in an ORDER BY clause.

  • Added syntax to allow multiple leaf nodes to be detached using the DETACH LEAF command.

  • Introduced disk and memory availability checks that run before a database is allowed to be attached to a workspace.

  • Added the ability to cache histogram results during optimization to reduce the work performed by the histograms.

  • Added the ability to backup a database to an HTTPS S3 target with an unverified SSL certificate when using the option: verify_ssl: false.

2023-03-06 Version 8.0.13

  • Fixed an issue with column type checking on base and recursive case of a recursive common table expression.

  • Fixed an issue that may cause a "Table doesn't exist" error when a multi-insert contains expressions and the target table has a computed column as its shard key.

  • Expanded existing Unicode characters to support Private Use Area (PUA) code points. Including one in the Basic Multilingual Plane (U+E000–U+F8FF) and one in each plane 15 and 16 (U+F0000–U+FFFFD, U+100000–U+10FFFD).

  • Fixed a crash that could occur when a computed column definition refers to a table name.

  • Increased default blob cache size on hosts with less than 200GB of total disk space.

  • Added the ability to set the maximum_blob_cache_size_percent global variable for workspaces.

  • Fixed an issue with promote lock timeout errors that may occur during a rebalance due to a heavy ingest workload, which causes the merger to be slow to pause.

  • Introduced a new global variable subprocess_max_retries, which is used for retrying on retry-able connection failures during select into/backup queries for S3 and GCS.

  • New feature: ORDER BY SELF JOIN, creates a self join on ORDER BY LIMIT queries to take advantage of differences in bandwidth.

  • Fixed an issue with the schema registry so only superusers can see redacted pipeline metadata such as credentials and URLs.

2023-02-27 Version 8.0.12

  • Background snapshots are now allowed to run during BACKUP DATABASE commands. This prevents increased disk usage by logs during a long-running backup.

  • The CREATE_TIME, CREATE_USER, ALTER_TIME, and ALTER_USER columns in the information_schema.TABLES view are now properly set for views and TVFs (table-valued functions).

2023-02-21 Version 8.0.11

  • Fixed an issue that occurred when the MATCH_PARAM_<type> argument of the JSON_MATCH_ANY function was not in a predicate expression.

  • Improved the performance of the JSON_MATCH_ANY_EXISTS function over columnstore tables.

  • Fixed a profiling issue specific to non-collocated hash joins where the memory usage and disk spilling are missing under the join operators.

2023-02-13 Version 8.0.10

  • Fixed an issue where the database engine locks up on certain out-of-memory errors.

  • Fixed an issue where the audit logs now show the original user of a query forwarded to the master aggregator instead of the internal distributed user.

  • Fixed a parsing issue for queries containing multi-line comments near GROUP BY or ORDER BY clauses.

  • The num_background_merger_threads engine variable is now settable on Cloud.

  • The ORDER BY ALL [DESC|ASC] (or ORDER BY *) syntax is now supported. 

  • The GROUP BY ALL [DESC|ASC] (or GROUP BY *) syntax is now supported. 

  • Improved the query execution performance of JSON columns under a higher level of parallelism.

  • Expanded support for encoded GROUP BY query shapes containing expressions in aggregates.

  • Added support for incremental backups to blob stores where a single partition contains more than 5 TB of data.

2023-02-06 Version 8.0.9

  • Added the REVERSE() built-in string function that reverses the target string.

  • Added the DATETIME_PRECISION column to both PARAMETER and ROUTINES information_schema views. Also, the DATETIME_PRECISION column will include TIME and TIMESTAMP data types in the COLUMNSinformation_schema view.

  • Fixed an issue causing incorrect trace messages in master logs where clocks were incorrectly advancing from "0".

  • Added a new information_schema view named LMV_LOCAL_DATABASES. This view shows the state of local databases like SHOW DATABASES EXTENDED, but it can be queried against unlike show commands.

  • Improved the code generation performance of tables with a large number of indexes.

  • Added the /api/v2/jwks_setup endpoint to Data API to allow users to enable JWT Auth in Data API on Cloud. See jwks_setup for more information.

  • Sampling will no longer be used for table size estimation when statistics are present.

  • Fixed an issue where extra CPU was used when a read-only database is attached to a workspace without any writable mount for the read-only database.

  • The spilling_minimal_disk_space engine variable can now be set at startup.

2023-01-30 Version 8.0.8

  • Fixed an issue with the master aggregator leaking memory while performing a background task.

  • Fixed the case where the REGEXP_REPLACE and REGEXP_SUBSTR expressions can produce non-utf8 strings by introducing the new engine variable regexp_output_validation_mode. Regular expression built-ins can produce non-utf8 strings because they don't have full support for multi-byte characters. The engine variable controls this behavior if regular expression built-ins return strings that are invalid under its collation settings.

  • Improved the performance on columnstore scans that perform multiple JSON extraction operations on the same JSON column.

2023-01-24 Version 8.0.7

  • Added a new OPTIMIZE TABLE <table_name> INDEX; command for columnstore tables. This command runs the optimization routine for columnstore secondary indexes manually.

  • Fixed an issue where recursive CTEs could fail to execute on upgrade to 8.0 if materialized CTEs were disabled.

  • Added the ignore_foreign_keys system variable, which allows foreign key syntax in CREATE TABLE commands, but completely ignores the key (it will not show up in metadata).

  • Allow modifying the json_extract_string_collation engine variable as long as a computed column that modifies the shard key does not contain a call to JSON_EXTRACT_STRING.

  • Added a new option, SERVER_V2, to the json_extract_string_collation engine variable. This new, recommended option is the default for new clusters, and allows comparison of utf8mb4 strings extracted from JSON to utf8 string constants. Existing clusters will retain their original setting upon upgrade.

  • Fixed an issue with databases becoming unrecoverable when upgrading to version 8.0 if any tables contained shard keys using computed columns that call JSON_EXTRACT_STRING.

  • Added the option to authenticate Data API requests using JWT.

  • Added the skip_segelim_with_inlist_threshold engine variable, which controls when segment elimination will not use an IN list that is too large (default 1000 elements).

2023-01-17 Version 8.0.6

  • Fixed a performance regression when running SET <system variable> = <expression> commands. These commands are often run by client drivers on new connections.

  • Improved the performance of various commands (SHOW commands, DDL, etc.) when there are very many views or tables in the database (100s of thousands).

  • Added CREATE_TIME and ALTER_TIME columns to information_schema.pipelines. CREATE_TIME shows the date/time a pipeline was created or recreated. ALTER_TIME shows the date/time a pipeline was altered via an ALTER PIPELINE statement.

  • Fixed an issue introduced in version 8.0.4 where SHOW TABLE STATUS was incorrectly displaying views.

  • Added a new global variable, num_background_merger_threads, which controls the number of background merger threads to start for each node.

  • information_schema.table_statistics now correctly shows information about global temporary tables.

2023-01-11 Version 8.0.5

  • Added support to PROFILE for hash join spilling.

  • Fixed an upgrade issue where a database that was originally created on SingleStore 6.8 or earlier and was then upgraded to 7.3 is then REPLICATED to SingleStore version 7.8 could result in broken shard keys.

  • Added support for Recursive CTEs in cases where a Recursive CTE has dependency on a streaming result table outside of its dependency cycle.

  • Fixed an issue with Recursive CTEs where one Recursive CTE refers to another Recursive CTE and that second CTE would only read the rows from the first CTE’s final iteration.

  • The SHOW STATUS EXTENDED command contains a new "Gv_clock" key whose value is the current logical clock of the server.

  • The SHOW DATABASE STATUS command contains a new "gv_clock" key whose value is the current logical clock of the server.

  • Fixed an issue with aggregate functions using incorrect enum/set types that may result in inaccurate output in the operator tree.

  • Fixed an edge case issue which could cause the engine to hang during shutdown.

  • Improved performance of comparing utf8mb4 strings.

  • Added a new information schema view internal_table_statistics which shows memory use of SingleStore internal metadata tables. The columns displayed are the same as those shown for table_statistics.

  • Fixed an edge case issue that could cause ADD AGGREGATOR to fail.

  • Reduced the memory used by ANALYZE queries by splitting approx count queries to only query a single JSON column at a time.

  • Improved the accuracy of network_time in PROFILE output for some query shapes.

  • The blob cache is now allowed to use more disk space by default on larger local disks. It will now use up to 90% of local disk space on disks over 2 TB in size instead of 75%.

  • Added a new global variable, maximum_blob_cache_size_percent, which can set the blob cache size as a value from 0 to 1 that is percentage of local disk the blob cache is allowed to use. The default value is 0.

  • Added a new global variable, num_background_merger_threads, which controls the number of background merger threads to start for each node. The default value is 2.

  • Fixed a MySQL protocol incompatibility where SingleStore was not properly sending back the SERVER_STATUS_IN_TRANS flag. This was impacting some MySQL php drivers.

Last modified: April 19, 2024

Was this article helpful?