ScalarDB 3.6 Release Notes
This page includes a list of release notes for ScalarDB 3.6.
v3.6.8
Release date: December 25, 2023
Summary
This release has several bug fixes, vulnerability fixes, and document improvements.
Change logs
Bug fixes
- Should drop namespace only when no tables are in the namespace in Schema Loader (#740)
- Upgraded the base image to fix security issues. CVE-2023-4911 CVE-2023-29491 (#1143 #1144)
- Upgraded the jetty library to 9.4.53.v20231009 to fix security issue. CVE-2023-36478 (#1142)
- Upgraded grpc-health-probe to fix security issues. CVE-2023-39325 GHSA-m425-mq94-257g (#1297)
- Upgraded the Cosmos DB client lib to fix security issues. CVE-2023-34062 (#1348)
v3.6.7
Release date: August 7, 2023
Summary
This release has several bug fixes and vulnerability fixes.
Change logs
Bug fixes
- Avoid decrementing outstanding requests counter duplicately (#935)
- Fix CVE-2023-1428 and CVE-2023-32731 (#943)
- Fix CVE-2023-2976 (#954)
v3.6.6
Release date: June 30, 2023
Summary
This release has several small improvements and vulnerability fixes.
Change logs
Improvements
- Improve some
toString
expressions of Selection Operators (#920)
Bug fixes
- Bump scalar-labs/jre8 from 1.1.12 to 1.1.13 in /server (#881)
- Bump scalar-labs/jre8 from 1.1.12 to 1.1.13 in /schema-loader (#882)
- Bump scalar-labs/jre8 from 1.1.13 to 1.1.14 in /schema-loader (#903)
- Bump scalar-labs/jre8 from 1.1.13 to 1.1.14 in /server (#902)
Documentation
- Change HTML syntax to Markdown for images (3.6) (#876)
v3.6.5
Release date: April 28, 2023
Summary
This release has several bug fixes and vulnerability fixes.
Change logs
Bug fixes
- Should care about ScanWithIndex in ScalarDbUtils.copyAndSetTargetToIfNot() (#793)
- Fix CVE-2022-42898 (#794)
- Fix CVE-2023-0286 (#821)
- Fix CVE-2023-0361 and CVE-2022-41723 (#834)
- Fix CVE-2022-41721 (#808)
v3.6.4
Release date: December 27, 2022
Summary
This release adds several configurations for gRPC and has several bug fixes.
Change logs
Enhancements
- Add configurations for gRPC (#776)
Bug fixes
- Upgrade docker image version to fix CVE-2021-46848 (#766)
- Fix CVE-2022-21363 and CVE-2021-2471 (#773)
- Fix CVE-2022-41946 (#774)
v3.6.3
Release date: December 1, 2022
Summary
This release has several bug fixes.
Change logs
Bug fixes
- Update protobuf and grpc to fix CVE-2022-3171 (#738)
- Fix CVE-2022-40151 and CVE-2022-40152 (#743)
v3.6.2
Release date: November 16, 2022
Summary
This release has several bug fixes.
Change logs
Bug fixes
- Fix CVE-2021-3999, CVE-2022-1586 and CVE-2022-1587 (#700)
- Commit/rollback records should always be done for all records even on error (#680)
- Should use partition key and clustering key from result in recovery (#681)
- Fix CVE-2022-27664 (#716)
- Should check the value range of BigIntColumn (#720)
- Fix CVE-2022-32149 (#727)
- Fix CVE-2022-42003 and CVE-2022-42004 (#726)
- Fix dependency errors for Maven projects (#735)
- Fix typos in exception messages (#714)
v3.6.1
Release date: September 2, 2022
Summary
This release has several bug fixes.
Change logs
Bug fixes
- Fix CVE-2022-31197 affecting PostgreSQL driver (#650)
- Fix CVE-2021-46828 by bumping the jre8 dependency version (#653)
- Fix CVE-2022-2509 (#654)
- Fix CVE-2022-37434 (#677)
v3.6.0
Release date: July 8, 2022
Summary
This release has a lot of API changes while preserving backward compatibility. Please see Java API Guide for the details of the API.
Also, it has a lot of enhancements, improvements, bug fixes, vulnerability fixes, and document improvements. Please see the following Change logs for the details.
Change logs
Enhancements
- Add suspend method to TwoPhaseCommitTransactionManager (#588)
- Allow null values (#512)
- Add factory methods to Key (#517)
- Add factory methods to Scan.Ordering (#520)
- Add ConditionBuilder (#519)
- Add creating and dropping index support to DistributedStorageAdmin (#526)
- Introduce DistributedTransactionAdmin (#528)
- Add support for isNull and isNotNull conditions (#529)
- Add SQL API (#525)
- Support parameterized statement in SQL API (#547)
- Introduce ScanAll operation (#548)
- Release SNAPSHOT versions (#561)
- Add scanAll for cassandra storage (#570)
- Add DistributedTransactionAdminService to Scalar DB Server (#575)
- Add ScanAll for Cosmos DB storage (#578)
- Add new steps in the release.yaml to push container to Azure Container Registry (#580)
- Add ScanAll for DynamoDB storage (#577)
- Add ScanAll for JDBC storage (#582)
- Implement the checkPaused service according to scalar-admin 1.2.0 (#583)
- Add ScanAll to GRPC storage (#584)
- Use
max_pause_wait_time
in AdminService (#585) - Implement ScanAll for Consensus Commit (#586)
- Add builder for Put, Delete, Scan and Get operations (#601)
- Add some useful methods (#614)
- Introduce GetWithIndex and ScanWithIndex operations (#618)
- Add methods to repair table and coordinator table to the Admin interfaces (#613)
- Add repair table command to the Schema Loader Tool (#622)
Improvements
- Refactor ImmutableLinkedHashSet (#513)
- Hide
Value
from users (#515) - Add more explicit methods to Put (#516)
- Deprecate the methods for default namespace and table (#518)
- Add conditional mutation integration test (#522)
- Add a method to get DataType of the column to Value (#523)
- Introduce Column (#527)
- Extract Admin interface from XXXAdmin (#531)
- Add a integration test putting a null value for secondary index column (#530)
- Extract an interface for transaction CRUD operations (#533)
- Move commonly used classes to
common
package (#532) - Execute conditional mutation integration tests in parallel (#536)
- Refactor SQL API (#538)
- Add more methods to SQL builders (#540)
- Rename metadata cache expiration time configuration name (#539)
- Support alias in SQL API (#542)
- Cache metadata in SQL API (#543)
- Fix typo in the integrationTestTwoPhaseConsensusCommit gradle task name (#546)
- Use collectors in Guava (#545)
- Update the base image jre8 to 1.1.0 (#551)
- Invalidate metadata cache when schema change happens in SQL API (#549)
- Change Gradle dependencies format (#554)
- Add validations for create table statements in SQL API (#552)
- Migrate CI to GitHub actions (#541)
- Upgrade JUnit to 5 (#555)
- Trigger CI for "push" event on the master branch (#557)
- Rearrange integration tests (#558)
- Update the base image jre8 to 1.1.1 (#560)
- Add transaction integration tests (#559)
- Rearrange schema loader integration tests (#565)
- Rearrange server integration tests (#566)
- Add integration tests for SQL API (#567)
- Add docker check to CI (#568)
- Add ifNotExists and ifExists flags to RPC (#569)
- Add CI triggers for "push" events on support and release branches (#572)
- Refactor DistributedTransactionAdmin (#574)
- Remove SQL API (#576)
- Refactor DatabaseConfig related things (#579)
- Enable PITR for metadata table in Dynamo DB adapter (#581)
- Update jre8 base image to 1.1.2 (#587)
- Update dependencies to fix CVE-2022-25647 (#589)
- Use dockerize command by default in the Dockerfile (#590)
- Handle projections in query for Cosmos DB (#591)
- For Dynamo storage, throw an exception when a Put set a secondary index column value to null (#593)
- Do not return primary key columns by default for selection operation in Storage mode (#592)
- Add check for empty key (#594)
- Add integration test for scanning table without clustering key (#595)
- Merge protocVersion and protobufVersion (#596)
- Add toString() to condition related classes (#599)
- Add a way to disable metadata cache (#598)
- Refactor ConsensusCommitUtils (#600)
- Remove copyDependencies task (#602)
- Fix CVE-2022-1664 (#604)
- Refactor Gradle Plugin things (#606)
- Introduce Column in Protocol Buffers (#607)
- Upgrade SpotBugs (#597)
- Refactor Scalar DB Server (#609)
- Add
@deprecated
javadoc to overriding methods (#610) - Fix non constant names (#611)
- Refactor Guice modules (#608)
- Use ThreadLocal for Random in integration test (#612)
- Fix CVE-2022-2068 (#623)
- Add Scanner paging support for scan operations to the Cosmos adapter (#619)
- Remove non useful operation in ScannerImpl from the Cosmos DB adapter (#624)
- Rename getCreateOptions() to getCreationOptions() in integration tests (#629)
- Refactor Schema Loader (#631)
- Rename
transactional
totransaction
(#632) - Reduce Intellij warnings (#633)
Bug fixes
- Fix typo in the javadoc (#514)
- Handle lastEvaluatedKey for query in DynamoDB (#534)
- Fix
Query condition missed key schema element
error in DynamoDB (#544) - Fix SQL syntax error that happens when scanning a table without clustering key in JDBC adapter (#550)
- Fix equals method of Value for bytes type (#553)
- Upgrade grpc_health_probe (#562)
- Upgrade PostgreSQL driver (#563)
- Upgrade Cosmos DB client (#564)
- Update the docs (#603)
- Fix incompatible change (#605)
Documentation
- Update ScalarDB compatibility test matrix (#510)
- Change terms in data model (#521)
- Update CI status badge in index.md (#556)
- Update backup creation and restoration procedures (#571)
- Update Javadoc (#615)
- Update documents (#616)
- Update Getting Started (#617)
- Add documentation for Consensus Commit configurations (#621)
- Add API guide (#620)
- Add myself in the released pom file "developers" information (#628)
- Add documentation for Storage abstraction (#625)
- Refactor Scalar DB Server documentation (#627)
- Add GraphQL and SQL to License section in README (#626)
- Fix typo (#630)
- Small modifications for documentation (#634)