Skip to content

Releases: scalar-labs/scalardb

v3.16.0

20 Jun 17:07
Compare
Choose a tag to compare

Summary

This release includes many enhancements, improvements, bug fixes, and performance optimizations.

Community edition

Enhancements

  • Added support for IBM Db2 LUV 11 and 12. (#2598)
  • Added a scanner API to the transaction abstraction for iteratively retrieving results. (#2729)
  • Added support for scan fetch size in the storage adapters. You can control the number of records fetched by the scan API in the storage layer by configuring the scalar.db.scan_fetch_size property. (#2731)
  • Added replication-tables option to the Schema Loader. (#2747)
  • Added support for beginning transactions in read-only mode. (#2749)
  • Fixed warnings for Javadoc and errorprone. (#2614)
  • Introduced StorageInfo, which provides metadata about the storage. You can obtain a StorageInfo instance via the DistributedStorageAdmin.getStorageInfo() method. (#2756)
  • Added Docker support for the ScalarDB Data Loader CLI, enabling containerized deployment of the data loading functionality. (#2758)
  • Added a CI workflow for the Data Loader CLI build. (#2761)
  • Added the READ_COMMITTED isolation level, which offers better performance, especially for low-contention workloads. (#2803)
  • Added support for one-phase commit optimization in Consensus Commit, significantly improving performance by skipping prepare-records and commit-state when all mutations can be committed atomically. Enable this optimization with the scalar.db.consensus_commit.one_phase_commit.enabled property. (#2811)

Improvements

  • Made changes so that the ScalarDB BIGINT data type will now be mapped to Oracle's NUMBER(16). (#2566)
  • Removed the EXTRA_WRITE strategy from Consensus Commit. After this change, if the EXTRA_WRITE strategy is specified when using Consensus Commit, the EXTRA_READ strategy will be used instead. (#2597)
  • Changed to disallow scan operations after a delete on the same record in Consensus Commit to prevent inconsistent behavior and align with the existing restriction on scans after writes. (#2610)
  • Changed to omit commit-state for read-only transactions in Consensus Commit to improve performance. This behavior is enabled by default but can be disabled by setting the property scalar.db.consensus_commit.coordinator.write_omission_on_read_only.enabled to false. (#2765)
  • Updated the code to remove before images after committing or rolling back records in Consensus Commit to reduce disk usage. (#2787)
  • Improved the read algorithm in Consensus Commit to reduce unnecessary retries. (#2798)

Bug fixes

  • Upgraded the Netty library to fix a security issue. CVE-2025-24970 (#2552)
  • Fixed a bug in Consensus Commit with SERIALIZABLE isolation level where a transaction consistently aborts if a record was inserted into the scan range after executing a scan with a limit. (#2621)
  • Fixed an issue with DistributedStorageAdmin.getNamespaceNames() API when using the DynamoDB storage with the namespace prefix setting scalar.db.dynamo.namespace.prefix. The namespace names returned by this method wrongly contained the prefix. (#2641)
  • Added exception handling for DateTimeParseException on column value conversion (#2662)
  • Fixed an issue where Get operations using secondary indexes could throw IllegalArgumentException in SERIALIZABLE transactions by converting them to Scan operations during validation. (#2683)
  • Fixed a bug that caused unnecessary implicit pre-reads when updating records retrieved by a secondary-index Get operation within a transaction. (#2700)
  • Fixed minor bugs and issues in Data Loader core. (#2752)
  • Fixed a bug where records could be missed when executing Get or Scan with conjunctions in Consensus Commit. (#2786)
  • Fixed an issue in Consensus Commit where reading the same record multiple times from storage could cause anomalies like lost updates. The read set is no longer updated on repeated reads to resolve this issue. (#2797)
  • Fixed potential connection leak when using jdbc storage and Scan operation fails because the target table doesn't exist (#2766)

Enterprise edition

Enhancements

ScalarDB Cluster

  • Introduced the attribute-based access control (ABAC) feature in ScalarDB Cluster.
  • Added a configuration option (scalar.db.transaction.enabled) to enable or disable the transaction feature in ScalarDB Cluster. The default value is true.
  • Added support for the scanner API in the transaction abstraction to iteratively retrieve results in ScalarDB Cluster.
  • Added support for beginning transactions in read-only mode in ScalarDB Cluster.
  • Added support for beginning transactions in read-only mode using SQL in ScalarDB Cluster.
  • Added the semi-synchronous replication feature in ScalarDB Cluster.

ScalarDB SQL

  • Added support for beginning transactions in read-only mode in ScalarDB SQL.

Improvements

ScalarDB Cluster

  • Added support for the Omnistrate service. Now, you can run ScalarDB Cluster in the Omnistrate service.
  • Made changes to prevent pausing of read-only transactions when a pause command is issued to ScalarDB Cluster.

Bug fixes

ScalarDB Cluster

  • Fixed a bug related to the metadata cache behavior when using auth in the SQL interface.
  • Fixed configurations for the embedding feature.
  • Fixed a bug that allowed superusers to execute ABAC administrative operations for non-existing users.
  • Fixed a bug a table-not-found error occurs when dropping empty ABAC system tables.
  • Fixed a memory leak issue when the coordinator group commit feature is enabled.

v3.15.4

20 Jun 16:06
Compare
Choose a tag to compare

Summary

This release includes fixes for vulnerabilities and bugs.

Community edition

Bug fixes

  • Add exception handling for DateTimeParseException on column value conversion. (#2662)
  • Upgraded the PostgreSQL driver to fix security issues. CVE-2025-49146 (#2772)
  • Fixed potential connection leak when using jdbc storage and Scan operation fails because the target table doesn't exist. (#2766)

Enterprise edition

Bug fixes

ScalarDB Cluster

  • Fixed a memory leak issue when the coordinator group commit feature is enabled.
  • Upgraded the OpenSearch Java client to fix a security issue. CVE-2025-27820

v3.15.3

15 May 07:40
Compare
Choose a tag to compare

Summary

This release includes fixes for vulnerabilities and bugs, and adds support for running ScalarDB Cluster on the Omnistrate service.

Community edition

Bug fixes

  • Fixed an issue with DistributedStorageAdmin.getNamespaceNames() API when using the DynamoDB storage with the namespace prefix setting scalar.db.dynamo.namespace.prefix. The namespace names returned by this method wrongly contained the prefix. (#2641)

Enterprise edition

Improvements

ScalarDB Cluster

  • Added support for the Omnistrate service. Now, you can run ScalarDB Cluster in the Omnistrate service.

Bug fixes

ScalarDB Cluster

v3.14.3

15 May 07:34
Compare
Choose a tag to compare

Summary

This release includes vulnerability and bug fixes.

Community edition

Bug fixes

  • Fixed an issue with DistributedStorageAdmin.getNamespaceNames() API when using the DynamoDB storage with the namespace prefix setting scalar.db.dynamo.namespace.prefix. The namespace names returned by this method wrongly contained the prefix. (#2641)

Enterprise edition

Bug fixes

ScalarDB Cluster

v3.13.4

15 May 07:34
Compare
Choose a tag to compare

Summary

This release includes vulnerability and bug fixes.

Community edition

Bug fixes

  • Fixed an issue with DistributedStorageAdmin.getNamespaceNames() API when using the DynamoDB storage with the namespace prefix setting scalar.db.dynamo.namespace.prefix. The namespace names returned by this method wrongly contained the prefix. (#2641)

Enterprise edition

Bug fixes

ScalarDB Cluster

v3.12.7

15 May 07:20
Compare
Choose a tag to compare

Summary

This release includes a vulnerability fix.

Enterprise edition

Bug fixes

ScalarDB Cluster

v3.15.2

24 Mar 00:59
Compare
Choose a tag to compare

Summary

This release has several improvements and bug fixes.

Community edition

Improvements

  • ScalarDB BIGINT datatype will now be mapped to Oracle's NUMBER(16). (#2566)

Bug fixes

Enterprise edition

Enhancements

ScalarDB Cluster

  • Added a configuration option (scalar.db.transaction.enabled) to enable or disable the transaction feature in ScalarDB Cluster. The default value is true.

Bug fixes

ScalarDB Cluster

  • Fixed a bug related to the metadata cache behavior when using auth in the SQL interface.
  • Fixed configurations for the embedding feature.
  • Fixed a bug that allowed superusers to execute ABAC administrative operations for non-existing users.
  • Fixed a bug a table-not-found error occurs when dropping empty ABAC system tables.

v3.14.2

24 Mar 00:59
Compare
Choose a tag to compare

Summary

This release has several improvements and bug fixes.

Community edition

Improvements

  • ScalarDB BIGINT datatype will now be mapped to Oracle's NUMBER(16). (#2566)

Bug fixes

Enterprise edition

Bug fixes

ScalarDB Cluster

  • Upgraded grpc_health_probe to fix security issues. CVE-2024-45337 CVE-2024-45338
  • Fixed a bug related to the metadata cache behavior when using auth in the SQL interface.

ScalarDB SQL

  • Fix an issue causing the SQL statement parser to reject negative numeric literal for columns of type INT and BIGINT.

v3.13.3

24 Mar 00:59
Compare
Choose a tag to compare

Summary

This release has several improvements and bug fixes.

Community edition

Improvements

  • ScalarDB BIGINT datatype will now be mapped to Oracle's NUMBER(16). (#2566)

Bug fixes

Enterprise edition

Bug fixes

ScalarDB Cluster

  • Upgraded grpc_health_probe to fix security issues. CVE-2024-45337 CVE-2024-45338
  • Fixed a bug related to the metadata cache behavior when using auth in the SQL interface.

ScalarDB SQL

  • Fix an issue causing the SQL statement parser to reject negative numeric literal for columns of type INT and BIGINT.

v3.12.6

24 Mar 00:58
Compare
Choose a tag to compare

Summary

This release has several improvements and bug fixes.

Community edition

Improvements

  • ScalarDB BIGINT datatype will now be mapped to Oracle's NUMBER(16). (#2566)

Bug fixes

Enterprise edition

Bug fixes

ScalarDB Cluster

  • Upgraded grpc_health_probe to fix security issues. CVE-2024-45337 CVE-2024-45338
  • Fixed a bug related to the metadata cache behavior when using auth in the SQL interface.

ScalarDB SQL

  • Fix an issue causing the SQL statement parser to reject negative numeric literal for columns of type INT and BIGINT.