Releases: scalar-labs/scalardb
Releases · scalar-labs/scalardb
v3.4.0
Enhancements
- Add ConsensusCommitUtils (#367)
- Add KeyBytesEncoder that converts a key to bytes while preserving the sort order (#369)
- Add clustering order support to JDBC adapter (#378)
- Add clustering order support to Dynamo adapter (#385)
- Add supporting schema creation/deletion can be called from program (#366)
Improvements
- Refactor XXXConfig classes (#372)
- Remove UnsupportedTypeException (#373)
- Add null or empty check for partition key and clustering key (#370)
- Allow empty value for partition key and clustering key (#374)
- Add dockerize to Dockerfile for grpc-server (#376)
- Add more tests to the multiple clustering key integration test (#380)
- Refactor CosmosAdmin (#382)
- Disallow empty values for Partition key and Clustering key (#381)
- DynamoDB sort key optimization (#375)
- Add single clustering key scan integration test (#386)
- Add column value integration test (#387)
- Add secondary index integration test (#389)
- Add partition key integration tests (#388)
- Add syntax highlighting for the dependency in README.md (#384)
- Run integration tests concurrently (#390)
- Introduce prometheus simpleclient_hotspot (#391)
- Add integration tests for clustering order (#393)
- Reduce integration test concurrency (#397)
- Add some more admin integration tests (#394)
- Modify Dockerfile to run as non-root (#395)
- Add -XX:MaxRAMPercentage parameter to SCALARDB_SERVER_OPTS (#392)
- Improve KeyBytesEncoderTest (#379)
- Reduce Intellij warnings (#400)
- Adjust integration test concurrency (#399)
- Small fix for release.yaml (#402)
Bug fixes
- Fix hashCode() in XXXValue and Key classes (#377)
- Should show the warning message only when specifying storage specific options (#396)
- Should add a suffix to the metadata table name in DynamoWithReservedKeywordIntegrationTest (#401)
Documentation
v3.3.1
Improvements
- Add more tests to the multiple clustering key integration test (#380)
- Add single clustering key scan integration test (#386)
- Add column value integration test (#387)
- Add secondary index integration test (#389)
- Add partition key integration tests (#388)
- Run integration tests concurrently (#390)
- Reduce integration test concurrency (#397)
- Adjust integration test concurrency (#399)
Bug fixes
v3.2.2
v3.3.0
Enhancements
- Add ConsensusCommitAdmin that manages transactional tables and coordinator table (#314)
- Make Coordinator namespace name configurable (#320)
- Make table metadata namespace name configurable in DynamoDB adapter (#323)
- Make table metadata schema name configurable in JDBC adapter (#324)
- Make table metadata database name configurable in Cosmos DB adapter (#322)
- Add Table metadata cache expiration configuration (#321)
- Add ifExists support to dropNamespace() and dropTable() in DistributedStorageAdmin (#330)
- Add methods to truncate and drop coordinator table to ConsensusCommitAdmin (#329)
- Add Clustering order support to Cosmos DB adapter (#345)
- Add tableExists method (#351)
- Implementation of schema tool in Java (#280)
- Add Schema loader things to the release action (#363)
- Add dockerizing for the schema-loader (#350)
Improvements
- Remove metadata from Coordinator (#315)
- Refactoring dynamo integration tests (#318)
- Refactor XXXAdmin (#317)
- Create Coordinator namespace in ConsensusCommitAdmin (#325)
- Make Coordinator backward compatible (#331)
- Refactor integration tests (#332)
- Remove namespace prefix (#333)
- Add no_output_timeout option for Cosmos DB integration test (#334)
- Disallow using BLOB type for clustering keys in Cosmos DB adapter (#339)
- Restrict BigIntValue range (#340)
- Refactor JdbcDatabaseAdmin (#338)
- Use composite index in Cosmos DB adapter (#335)
- Make command line params more flexible in Schema loader (#342)
- Add Gradle options for disabling Gradle daemon in the CI (#343)
- Add integration tests for scanning operations on multiple clustering keys (#319)
- Fix a javadoc warning (#353)
- Add some reports to CI (#354)
- Delete unnecessary files (#355)
- Upgrade AWS SDK version (#356)
- Make properties in DatabaseConfig visible (#357)
- Use log4j2 in Scalar DB server (#358)
- Schema loader return proper exit code, add a deprecated warning when using storage-specific command, remove Powermock (#348)
- Use MockitoAnnotations.openMocks() instead of MockitoAnnotations.initMocks() (#360)
- Change the default values of JDBC connection pool configurations (#361)
Bug fixes
- Fixed broken link. (#313)
- Correct comparator of item sorter in Dynamo DB adapter (#327)
- FloatValue should be mapped to double type in MySQL (#337)
- Fix duplicate of equal fields in the query when do range scanning with multiple clustering keys in Cassandra adapter (#328)
- Fix default collation of tables when creating in JDBC DBs, make them be consistent with others. (#336)
- Using scan to count items in the table instead of using table description. (#341)
- Fix command options are invalid when dispatching to storage specific command in schema loader (#346)
- Dynamo Admin wait for continuous backup enabled already before updating point-in-time recovery, wait for deletion of table finish (#347)
Documentation
v3.2.1
Improvements
- Disallow using BLOB type for clustering keys in Cosmos DB adapter (#339)
- Restrict BigIntValue range (#340)
- Upgrade AWS SDK version (#356)
- Refactor XXXAdmin (#317)
- Use log4j2 in Scalar DB server (#358)
- Change libssl and openssl versions in Dockerfile in scalar-schema (#362)
Bug fixes
- FloatValue should be mapped to double type in MySQL (#337)
- Fix duplicate of equal fields in the query when do range scanning with multiple clustering keys in Cassandra adapter (#328)
- Fix default collation of tables when creating in JDBC DBs, make them be consistent with others. (#336)
- Fixed broken link. (#313)
- Correct comparator of item sorter in Dynamo DB adapter (#327)
- Using scan to count items in the table instead of using table description. (#341)
- Dynamo Admin wait for continuous backup enabled already before updating point-in-time recovery, wait for deletion of table finish (#347)
v3.1.2
Improvements
- Fix CVE-2021-3711 (#298)
- Add .gitignore (#289)
- Upgrade AWS SDK version (#356)
- Use log4j2 in Scalar DB server (#358)
Bug fixes
v3.2.0
Enhancements
- Implement addition and deletion of metadata table for jdbc metadata manager (#259)
- Add useful constructors to Key with a single value (#265)
- add scalar-schema dockerfile (#266)
- Add integration test for JDBC SqlServer to the CI configuration (#269)
- Add create, truncate and delete table implementation to JDBCAdmin (#270)
- Introduce factory classes to instantiate storage and transaction (#276)
- Add create, truncate and delete table implementation to Cassandra Admin (#278)
- Add Two-phase Consensus Commit (#299)
- Support Two-phase Commit Transactions in Scalar DB server (#302)
- Add active_transactions_management config to GrpcTwoPhaseCommitTransactionManager (#304)
- Implementation of Dynamo Admin module (#301)
Improvements
- Refactor build.gradle (#261)
- Disable Prometheus HTTP endpoint when the port is specified to zero in Scalar DB server (#260)
- Introduce Spotbugs plugin (#262)
- Introduce Error Prone plugin (#263)
- Use the new utility methods/constructors (#268)
- Rename the integrationTest source set to integrationTestAll (#272)
- Add publishToMavenLocal for archiving and uploading to maven central (#273)
- Reduce the Cassandra heap size for the multi-storage integration test (#275)
- Refactor Prometheus exporter (#274)
- Fix optimization warnings (#279)
- Add a new createTable() method without any options to DistributedStorageAdmin (#281)
- Update scalar db compatibility matrix (#282)
- Reduce IntelliJ warnings (#287)
- Add .gitignore (#289)
- Add some attributes to Oracle tables for performance (#285)
- Rename metrics names of Scalar DB server (#277)
- Update Cassandra & Jdbc admin with new interface (#288)
- Use Cassandra Admin in MultiStorage integration test (#292)
- Rename CassandraAdmin network-strategy to replication-strategy (#293)
- Finalize Cosmos DB Admin implementation (#290)
- Separate consensus commit related config from DatabaseConfig (#294)
- Add tests for getState() and abort() in DistributedTransactionManager to the ConsensusCommit integration test (#295)
- Update MultiStorageAdmin with new interface (#296)
- Update GrpcAdmin with new interface (#297)
- Fix CVE-2021-3711 (#298)
- Remove unchecked warnings (#305)
- Fix typos (#306)
- Fix Javadoc related things (#307)
- Upgrade the Error Prone plugin (#308)
- Add Javadoc for DistributedStorageAdmin (#309)
- Change service name of TwoPhaseCommitTransactionService (#310)
- Refactor CassandraAdmin and CosmosAdmin (#311)
- Introduce GateKeeper that manages the front gate of the server that processes requests (#291)
Bug fixes
- Use column name alias for projection expressions in the DynamoDB adapter (#264)
Documentation
v3.1.1
Enhancements
- Add useful constructors to Key with a single value (#265)
- add scalar-schema dockerfile (#266)
- Add integration test for JDBC SqlServer to the CI configuration (#269)
- Introduce factory classes to instantiate storage and transaction (#276)
Improvements
- Refactor build.gradle (#261)
- Introduce Spotbugs plugin (#262)
- Introduce Error Prone plugin (#263)
- Use the new utility methods/constructors (#268)
- Rename the integrationTest source set to integrationTestAll (#272)
- Add publishToMavenLocal for archiving and uploading to maven central (#273)
- Reduce the Cassandra heap size for the multi-storage integration test (#275)
Bug fixes
- Use column name alias for projection expressions in the DynamoDB adapter (#264)
v3.0.2
v3.1.0
Enhancements
- Expose the Prometheus HTTP endpoint port in the Scalar DB server Docker image (#251)
- Refactoring the code around DatabaseConfig (#247)
- Support Prometheus in Scalar DB Server (#246)
- Add metrics to Scalar DB Server (#245)
- Add the admin interface to Scalar DB server (#240)
- Add transaction manager config (#239)
- Make Scalar DB transactions be able to abort eagerly (#238)
- Add Docker support for Scalar DB Server (#227)
- Add gPRC layer for DistributedTransaction (#216)
- Add gPRC layer for DistributedStorage and DistributedStorageAdmin (#210)
- Introduce DistributedStorageAdmin that is an administrative interface for distributed storage implementations (#204)
- Fix warnings of raw use of parameterized class for the Value class (#196)
- Refactor some configuration names (#179)
- Add a new storage implementation for multi-storage (#174)
Improvements
- Some more release related changes (#258)
- Some changes for release (#257)
- Some changes related to release (#256)
- Use the Scalar DB server default port if not specified in the Scalar DB server client (#250)
- Support deadline in Scalar DB Server clients (#248)
- Support graceful shutdown (#244)
- Some refactoring for the implementations of DistributedStorageAdmin (#243)
- Use Uninterruptibles in Guava (#242)
- Revisit the code around onCompleted() in bidirectional streaming of gRPC (#241)
- Reorganize the protocol buffer messages for DistributedTransaction (#236)
- Use bidirectional streaming RPCs for scan operations in DistributedStorageService (#235)
- Add unit tests for ServerConfig (#232)
- Rename some classes in the Server project (#231)
- Make DistributedStorageAdmin throw ExecutionException (#230)
- Use bidirectional streaming RPCs in DistributedTransactionService (#228)
- Delete unnecessary files (#224)
- Introduce Spotless plugin for code format (#223)
- Reorganize the CI config (#222)
- Convert the project to multi-project (#221)
- Some refactoring for the gRPC services (#220)
- Upgrade Cosmos DB client (#218)
- Upgrade the gradle build to 7 (#217)
- Refactor the integration tests for transaction (#215)
- Rename JdbcAdminIntegrationTest to JdbcDatabaseAdminIntegrationTest (#214)
- Some refactoring for JdbcTransaction (#213)
- Remove InvalidUsageException for transaction (#212)
- Add another constructor to PutIf and DeleteIf (#211)
- Support the endpoint override feature for Dynamo (#209)
- Support namespace mappings in MultiStorage (#207)
- Add some more useful methods to Key.Builder (#206)
- Remove MultiPartitionException (#205)
- Refactor the code around Scanner (#203)
- Allow username and password to be null in DatabaseConfig (#201)
- Refactor the code around metadata (#199)
- Add utility methods for Value/Put and a builder class for Key (#198)
- Refactor exceptions in Scalar DB for easier retry handling (#197)
- upgrade guice version to 5.0.1 for java 11 compatibility (#194)
- Add a validation that checks not to use BOOLEAN type for a clustering key or a secondary index in Schema Tool for DynamoDB (#192)
- Use "FETCH FIRST n ROWS ONLY" instead of ROWNUM for LIMIT for Oracle (#191)
- Add integration test for Oracle to CI (#190)
- Refactor Scalar Schema tool for more consistency (#188)
- Unify the behavior with -D (deleting all tables) in Schema Tool (#184)
- Add support for endpoint_override in Schema Tool for DynamoDB (#183)
- Change the text data type from varchar to varchar2 in the JDBC adapter for Oracle (#182)
- Unify the behavior between the adapters when a specified table in a operation is not found (#178)
- Fix scan related tests in Scalar DB (#177)
- Extend the ConsensusCommit integration tests to cover multi-table transactions (#176)
- Unify the integration tests of Scalar DB on X (#172)
- Specify a driver class corresponding to the JDBC URL to the dataSource (#170)
- Unify the operation check logic of the adapters (#169)
- Change metadata of partition key and clustering key from Set to LinkedHashSet to keep the order (#168)
- Add the integration tests for the Cosmos DB adapter and the DynamoDB adapter to CI (#167)
Bug fixes
- Fix the getting started project (#233)
- Rename ConsensusCommitWithGrpcStorageIntegrationTest (#225)
- Add duplicatesStrategy to installDist (#219)
- Should close PreparedStatement and ResultSet in scan operations of JdbcTransaction (#208)
- Use com.google.inject.Inject instead of javax.inject.Inject (#200)
- make attributes for secondary indexes (#189)
- Fix the bug where the error occurs when executing a Put operation without values in the JDBC adapter (#180)
- Fix the broken TLA+ link (#175)
- Wrong index name when a namespace prefix is not specified in the schema tool for DynamoDB (#173)
- Update pip URL (#171)
Documentation
- Add multi-storage documentation (#255)
- Add a backup guide for the Scalar DB server (#254)
- Add documentation of Scalar DB Server (#253)
- Revise README.md of root folder (#237)
- Adding beginner friendly precisions (#234)
- Update compile commade new gradle version (#229)
- Update descriptions and data type mapping (#181)