Releases: scalar-labs/scalardl-java-client-sdk
Release list
v3.14.0
Summary
This release introduces the transaction state purge feature, which reclaims residual transaction states, and includes several improvements and bug fixes. For detailed changes, see the following.
Community and Enterprise editions
Enhancements
- Added transaction state purge, which reclaims stale Coordinator/transaction states left in the database. States are purged when a transaction finishes, by a periodic background scan, or on demand via the new
purge-stateCLI command.
Improvements
- Added asset lock recovery RPC for the ScalarDL cleanup tool.
- Upgraded ScalarDB to 3.19.0.
Bug fixes
- Fixed an issue where contracts could not access a JDBC database (e.g., PostgreSQL).
- Fixed the Ledger to reject unsupported ScalarDB transaction managers at startup instead of silently accepting them.
- Restricted function execution so that a function registered in a non-default namespace can only access the ScalarDB namespace with the same name as its context namespace, or a namespace whose name starts with the context namespace followed by an underscore.
- Fixed contract execution failing with an
AccessControlExceptionwhen ScalarDL runs on a ScalarDB multi-storage configuration, by granting the required sandbox permissions regardless of the configured storage type. - Fixed several vulnerabilities in grpc-health-probe.
- Fixed an issue where contract execution failed when database connections needed to be re-established (for example, after a database restart or an idle timeout) with the SecurityManager enabled.
- Removed the top-level
create-namespacecommand. Usescalardl create-namespaceinstead, which is consistent with the other namespace commands (scalardl drop-namespace,scalardl list-namespaces). - Fixed a race condition where pausing a Ledger (or Auditor/Gateway) server could report success while the server remained unpaused.
Enterprise edition
Bug fixes
- Fixed read lock count corruption caused by concurrent recovery and eliminated unnecessary CAS failures when recovering multiple read lock nonces.
- Fixed an issue in the Auditor where a Ledger call failure during asset lock recovery was reported to clients as a generic runtime error, or its cause was lost by being treated as an unknown transaction state.
- Fixed an issue where the Auditor on JDBC databases (Oracle) could fail to execute contracts with a
DL-COMMON-305001error caused by reading an asset lock entry whose value was stored asNULL. - Fixed an issue where Gateway log lines were recorded under the wrong logger category.
- Fixed an issue where contract execution on Auditor failed when database connections needed to be re-established (for example, after a database restart or an idle timeout) with the SecurityManager enabled.
- Fixed an issue where retrying a read lock release could fail with a misleading
INCONSISTENT_STATESerror when a concurrent recovery had already released the lock.
v3.13.0
Summary
This release introduces several enhancements related to the namespace feature and includes several improvements and bug fixes. For detailed changes, see the following.
Community and Enterprise editions
Enhancements
- Added support for namespace management functionalities.
- Added support for namespace-aware contract execution.
- Added support for isolated namespaces.
Improvements
- Upgraded server-side Java versions to Java 21.
Bug fixes
- Fixed the JSON Schema Validator repository and version.
- Fixed bugs to handle FLOAT and BLOB data types in the PutToMutable function.
- Fixed NullPointerException when a client is misconfigured with a digital signature.
- Fixed status code handling.
- Fixed the parameter name for the client entity ID.
- Fixed a bug where users cannot register a custom ValidateLedger contract after bootstrapping.
- Fixed CVE-2025-47907 and CVE-2025-58183.
- Fixed CVE-2025-61726, CVE-2025-61728, CVE-2025-61729 and CVE-2025-68121.
Enterprise edition
Bug fixes
- Fixed duplicated read lock.
- Fixed Gateway exception handling.
- Fixed an SLF4J version conflict in BYOL Docker images.
v3.12.2
Summary
This release includes several bug fixes and vulnerability fixes.
Community and Enterprise editions
Bug fixes
- Fixed bugs to handle FLOAT and BLOB data types in the PutToMutable function.
- Fixed NullPointerException when a client is misconfigured with a digital signature.
- Fixed status code handling.
- Fixed CVE-2025-47907 and CVE-2025-58183.
- Fixed CVE-2025-55163.
v3.12.1
v3.12.0
Summary
This release introduces several enhancements, such as ScalarDL HashStore and TableStore, and includes several improvements and bug fixes. For detailed changes, see the following.
Enhancements
- Added ScalarDL HashStore.
- Added ScalarDL TableStore.
Improvements
- Supported time-related data types in the generic function.
- Bundled the ValidateLedger contract into the client.
- Disabled the coordinator write omission in ScalarDB.
Bug fixes
- Fixed the state management behavior for read-only transactions.
- Fixed certificate and secret key version check and messages.
- Fixed Ledger and Auditor configuration validations for correct authentication settings.
- Fixed
IS NULLandIS NOT NULLconditions handling in table-oriented generic contracts. - Fixed CVE-2025-22874.
v3.10.2
Summary
This release includes several bug fixes. For detailed changes, see the following.
Bug fixes
- Fixed CVE-2024-13009, CVE-2025-22869, and CVE-2025-24970. (scalar-labs/scalardl#142, scalar-labs/scalardl#143)
- Fixed the parameter name for the authentication method. (scalar-labs/scalardl#148)
v3.9.6
Summary
This release includes several bug fixes. For detailed changes, see the following.
Bug fixes
- Fixed CVE-2025-22869. (scalar-labs/scalardl#142)
- Fixed the parameter name for the authentication method. (scalar-labs/scalardl#148)
v3.11.0
Summary
This release introduces enhancements, such as table-oriented generic contracts, and includes several bug fixes. For detailed changes, see the following.
Enhancements
- Added table-oriented generic contracts. (scalar-labs/scalardl#108, scalar-labs/scalardl#119, scalar-labs/scalardl#124, scalar-labs/scalardl#127, scalar-labs/scalardl#138, scalar-labs/scalardl#139, scalar-labs/scalardl#141, scalar-labs/scalardl#149, scalar-labs/scalardl#150, scalar-labs/scalardl#165)
Bug fixes
- Fixed CVE-2024-45337. (scalar-labs/scalardl#107)
- Fixed CVE-2025-22869. (scalar-labs/scalardl#142)
- Fixed the parameter name for the authentication method. (scalar-labs/scalardl#148)
v3.10.1
Summary
This release has several improvements and bug fixes.
Community edition
Improvements
- Added client-service APIs and tools for a generic-contract-based setup.
Bug fixes
- Fixed CVE-2024-45337.
Enterprise edition
Improvements
- Improved the lock-recovery behavior when the lock-owner transaction is aborted.
v3.9.5
Summary
This release has several improvements and bug fixes.
Community edition
Bug fixes
- Fixed CVE-2024-45337.
Enterprise edition
Improvements
- Improved the lock-recovery behavior when the lock-owner transaction is aborted.