Skip to content

Releases: aws/aws-advanced-jdbc-wrapper

AWS Advanced JDBC Driver - v2.3.5

14 Mar 00:20
2cbb66b
Compare
Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[2.3.5] - 2024-03-14

🪄 Added

  • Sample code configuring the AWS JDBC Driver with DBCP (PR #930).

🦀 Changed

  • Fix issue with deadlock while using prepared transactions and PostgreSQL Explicit Locking (PR #918).
  • Removed ConnectionStringHostListProvider#identifyConnection since it is not used (PR #920).

AWS Advanced JDBC Driver - v2.3.4

01 Mar 22:37
Compare
Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[2.3.4] - 2024-03-01

🪄 Added

  • Documentation:
  • Spring Framework application code examples with load balanced access to database cluster reader instances (PR #852).
  • New configuration preset SF_ optimized for Spring Framework applications (PR #852).
  • Lightweight alternative for IAM token generator that requires fewer dependencies (PR #867).

🐛 Fixed

  • Fixes to session state transfer (PR #852).
  • Enhanced Host Monitoring Plugin (EFM) v2 plugin to use ConcurrentHashMap instead of HashMap to avoid ConcurrentModificationException (Issue #855).
  • Move lock location and skip executing Statement.getConnection when running Statement.cancel to fix Statement.cancel for MySQL (PR #851).
  • Remove Telemetry trace associated with a Monitor thread because traces for long-running tasks is an anti-pattern (PR #875).

🦀 Changed

  • HostSelector implementations to take into account HostAvailability (PR #856).
  • Reduced the number of Regular Expression checks with Matcher.find to improve performance (PR #854).
  • HostSpec class to not use a default lastUpdateTime and instead use null (PR 877).
  • Moved Reader Selection Strategies out of the UsingTheReadWriteSplittingPlugin doc and into its own page. See ReaderSelectionStrategies.

AWS Advanced JDBC Driver - v2.3.3

23 Jan 17:08
3812269
Compare
Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[2.3.3] - 2024-01-23

🪄 Added

🐛 Fixed

  • SqlMethodAnalyzer to handle empty SQL query and not throw IndexOutOfBoundsException (PR #798).
  • Restructure try blocks in dialects for exception handling (PR #799).
  • Log message to communicate that an RDS Custom Cluster endpoint can't be used as the 'clusterInstanceHostPattern' configuration setting (PR 801).
  • Make a variable volatile in RdsHostListProvider (Issue #486).
  • Transfer session state during failover (Issue #812).
  • Release all stopped monitors so that they are not reused (PR #831).
  • Added update candidates for the MariaDB dialect in order to swap to MySQL dialects in the case of using a MySQL database with the protocol jdbc:aws-wrapper:mariadb://, and fixed the RDS MySQL dialect from incorrectly returning false in isDialect method (Issue #789).

🦀 Changed

  • Session state tracking and transfer redesign (PR #821).
  • Improve Multi-AZ cluster detection (PR #824).
  • Enhanced Host Monitoring Plugin (EFM) v2 plugin is now a default plugin. The original EFM plugin can still be used by specifying efm in the wrapperPlugins parameter (PR #825).
  • Update China endpoint patterns (PR #832).

AWS Advanced JDBC Driver - v2.3.2

18 Dec 22:34
Compare
Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[2.3.2] - 2023-12-18

🪄 Added

  • Federated Authentication Plugin, which supports SAML authentication through ADFS (PR #741).
  • Experimental Enhanced Host Monitoring Plugin v2, which is a redesign of the original Enhanced Host Monitoring Plugin that addresses memory leaks and high CPU usage during monitoring sessions (PR #764).
  • Fastest Response Strategy Plugin, which implements a new autoscaling strategy (PR #755).
  • Plugin code for Aurora Initial Connection Strategy Plugin. This plugin returns an instance endpoint when connected using a cluster endpoint (PR #784).

🐛 Fixed

  • Use existing entries to update the round-robin cache (PR #739).

🦀 Changed

  • Updated HikariCP example to include configuring the datasource with a JDBC URL (PR #749).
  • Replaced the sychronized keyword with reentrant locks in AwsCredentialsManager (PR #785).
  • Set HostId in HostSpec when connecting using Aurora instance endpoints (PR #782).

AWS Advanced JDBC Driver - v2.3.1

29 Nov 22:13
Compare
Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[2.3.1] - 2023-11-29

🪄 Added

🐛 Fixed

  • Stopped monitoring threads causing out of memory errors (PR #718).
  • Automatically register a target driver in the class path to prevent No suitable driver SQL exceptions (PR #748).

🦀 Changed

  • Session state tracking to include additional state information (PR #729).
  • Log level for intentionally ignored exceptions to reduce the number of warnings (PR #751).

AWS Advanced JDBC Driver - v2.3.0

15 Nov 22:33
Compare
Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[2.3.0] - 2023-11-15

🪄 Added

  • Fast switchover support for Amazon RDS Multi-AZ DB Clusters (PR #690).
  • Endpoint override for the AWS Secrets Manager plugin (PR #707).
  • Allow users to set up a lambda to initialize new connections (PR #705).
  • Introduced Dialect.prepareConnectProperties to allow dialect classes to modify connection properties when opening a new connection (PR #704).
  • Native telemetry support (PR #617).
  • Documentation on known limitations with global databases (PR #695).

🐛 Fixed

  • Continue monitoring if unhandled Exception is thrown (PR #676).
  • Password properties are now masked in logs (PR #701 and PR #723).
  • Issue when getting a connection for a closed statement (PR #682).
  • Maven coordinates in README (PR #681).
  • Update topology for specific methods (PR #683).

🦀 Changed

  • Added buffer to IAM token expiry and moved token expiry time creation (PR #706).
  • Documentation on known limitations with Blue/Green deployments (PR #680).

AWS Advanced JDBC Driver - v2.2.5

04 Oct 19:10
Compare
Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[2.2.5] - 2023-10-03

🪄 Added

  • Optional preservation of partial session state post failover (PR #632).
  • Round Robin host selection strategy (PR #603).
  • Sample application failover retry with Spring Boot (PR #638).

🦀 Changed

  • Renamed the messages.properties file to aws_advanced_jdbc_wrapper_messages.properties (Issue #633).

AWS Advanced JDBC Driver - v2.2.4

29 Aug 18:33
Compare
Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[2.2.4] - 2023-08-29

🪄 Added

  • Host Availability Strategy to help keep host health status up to date (PR #530).
  • Implement setLoginTimeout from a suggested enhancement (Discussion #509).

🐛 Fixed

  • Allow connecting with reader cluster endpoints for Aurora PostgreSQL versions 13.9 and greater by changing the AuroraPgDialect topology query (Issue #593).
  • Race condition issues between MonitorThreadContainer#getInstance() and MonitorThreadContainer#releaseInstance() (PR #601).

🦀 Changed

  • Dynamically sets the default host list provider based on the dialect used. User applications no longer need to manually set the AuroraHostListProvider when connecting to Aurora Postgres or Aurora MySQL databases.
  • Deprecated AuroraHostListConnectionPlugin.
    • As an enhancement, the wrapper is now able to automatically set the Aurora host list provider for connections to Aurora MySQL and Aurora PostgreSQL databases.
      Aurora Host List Connection Plugin is deprecated. If you were using the AuroraHostListConnectionPlugin, you can simply remove the plugin from the wrapperPlugins parameter.
      However, if you choose to, you can ensure the provider is used by specifying a topology-aware dialect, for more information, see Database Dialects.
  • Propagate Connection.clearWarnings() to underlying connections in the Read Write Splitting Plugin so that the connection object does not accumulate warning messages (Issue #547).
  • Close underlying connections in the Read Write Splitting Plugin after switching to read-write or read-only depending on whether internal connection pooling is used (PR #583).
  • Sort plugins by default to prevent plugin misconfiguration. This can be disabled by setting the property autoSortWrapperPluginOrder to false (PR #542).
  • Documentation:
    • Clarified AWS JDBC Driver limitations with Blue/Green deployments. See Known Limitations.
    • Updated and reworded main README.md page.

AWS Advanced JDBC Driver - v2.2.3

31 Jul 21:28
e37c681
Compare
Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[2.2.3] - 2023-07-28

🪄 Added

  • Developer plugin to help test various scenarios including events like network outages and database cluster failover. This plugin is NOT intended to be used in production environments and is only for testing (PR #531).
  • Documentation:

AWS Advanced JDBC Driver - v2.2.2

05 Jul 20:51
fd9e6da
Compare
Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[2.2.2] - 2023-07-05

🪄 Added

  • Official support for Amazon Aurora with MySQL compatibility. The AWS JDBC Driver has been validated to support MySQL JDBC Driver and MariaDB JDBC Driver.
  • Documentation:
    • Maintenance and release policy (PR #442 and PR #507).
    • Migration guide for moving from the AWS JDBC Driver for MySQL to the AWS JDBC Driver (PR #510).

🦀 Changed

  • Improved integration test suite performance by creating required test database clusters in advance (PR #411).
  • Documentation:
    • Correct portNumber to serverPort in Hikari example (PR #504).
    • Updated Maven Central links and references to third party framework examples (PR #499).