Google AlloyDB JDBC driver upgrade from v42.4.2 to v42.7.2

FAQ for the Google AlloyDB JDBC Driver Upgrade

 

What is happening?

We have upgraded the JDBC driver for the Google AlloyDB Snap Pack from v42.4.2 to v42.7.2 (Java 8). This upgrade will be part of the GA release on August 14, 2024 (Stable release). As a part of this upgrade, the 42.7.2 JDBC driver is bundled with the Google AlloyDB Snap Pack as the default JDBC driver.

Why are we upgrading the PostgreSQL driver?

To improve security, performance, stability, and reliability.

What is the timeline for this upgrade?

This upgrade is now available with the Snap Pack version 4postgresupgrade26570 for Google AlloyDB and can be manually selected if you want to do early testing before the Latest July release (available on July 10, 2024). This driver upgrade will be part of the GA release on August 14, 2024 (Stable release).

Will I be impacted?

Yes, you will be impacted if you use the default version. The impact might be minimal if you use the latest driver or a higher version than the v42.7.2 (Java 8) JDBC driver.

  • To check the version of the current JAR file that you are using, refer to PostgreSQL's latest versions.

  • To know the JAR file that is in use, follow these steps:

    1. Open the JAR file using a ZIP utility or a JAR viewer tool.

    2. Look for the META-INF/MANIFEST.MF file in the JAR and check the version.

You will not be impacted if you provide your own custom driver. 

Do I need to reconfigure my accounts?

No, you do not have to reconfigure your account settings or drivers; the account can remain as-is to work with the latest driver. However, if you currently use the default version and want to revert to the previous version behavior, we recommend you use postgres 42.4.2.jar.

We recommend you investigate your pipelines and check the Snaps downstream of PostgreSQL snaps for any of the affected scenarios. Update any dependencies that the downstream Snaps might have with respect to the changing error and outputs (especially in expressions) to conform to the new expected errors and outputs. Learn more about the change in errors and outputs for the new (v42.7.2) JDBC driver.

How can I verify that the changes work?

In a production Org

  1. If you have a production Org to validate connections to your Google AlloyDB instances, you may upload a PostgreSQL JDBC driver JAR compatible with postgres 42.4.2.jar.

  2. Upload that JAR file to your Org’s shared folder and specify it in the AlloyDB Account.

  3. Validate the account.

  4. After you verify that the updated JDBC driver works, you may remove it.

How do you override the behavior changes?

Use the v42.4.2 to maintain the same behavior as before the driver upgrade.

Behavior change

  • Changes in the query in the error messages:

    • Some error messages will now include the data type for certain values, for example:

      • Old: "...where (badId = 1) was aborted:..."

      • New: "...where (badId = ('1'::numeric)) was aborted:..."

  • Improvisations in error messages:

    • There are some minor wording changes to some error messages, for example:

      • Old: "Hint: No operator matches the given name and argument types."

      • New: "Hint: No operator matches the given name and argument type(s)."