Migrating from the PostgreSQL JDBC Driver to the Amazon Redshift JDBC Driver
In this article
Overview
The Redshift Snap Pack uses the Amazon Redshift JDBC driver com.amazon.redshift.jdbc42.driver
as the default driver class beginning from the March 2023 release. This upgrade is backward compatible. The existing pipelines configured either with the PostgreSQL JDBC driver or the Redshift JDBC driver will continue to work as expected. The new pipelines use the Amazon Redshift JDBC driver as the default driver.
Important:
SnapLogic will support providing fixes for the issues you might encounter with accounts that use the PostgreSQL JDBC driver only until November 2023, after which SnapLogic will not provide support. Therefore, we recommend that you migrate from the PostgreSQL JDBC driver to the Redshift JDBC driver by November 2023.
Migrating to the Amazon Redshift JDBC driver
To migrate from the PostgreSQL to the Redshift JDBC driver as the default driver, update the JDBC Driver Class in the Account settings from “org.postgresql.driver
” to "com.amazon.redshift.jdbc42.driver"
in your existing accounts:
JDBC Driver Configuration Scenarios in Redshift Accounts
Your pipelines might use a combination of JDBC drivers, classes, and URLs of either the PostgreSQL or the Amazon Redshift JDBC. Here are the configuration scenarios that are authenticated successfully.
For the JDBC driver:
Default JAR indicates the driver that is bundled with the Snap Pack, and manual indicates the driver that you manually upload.
For the JDBC URL:
Default JAR indicate the Snap-generated URL, and manual indicates the URL that you manually specify.
JDBC Driver JAR | JDBC Driver Class | JDBC URL | Authentication |
Redshift (default/manual) |
|
| Authenticates successfully when the:
|
Redshift (manual) |
|
| Authenticates successfully using the manually uploaded JAR file and manually specified JDBC URL. |
PostgreSQL (default/manual) |
|
| Authenticates successfully when the:
|
PostgreSQL (manual) |
|
| Authenticates successfully using the manually uploaded JAR file and manually specified JDBC URL. |
Redshift (manual) |
|
| Authenticates successfully using the default PostgreSQL JAR file. |
PostgreSQL (manual) |
|
| Authenticates successfully using the default Redshift JAR file. |
If your account configuration uses one of the following combinations of JAR files, driver classes, and JDBC URLs, then your account cannot be authenticated because of the misaligned JDBC driver class and JDBC URL.
JDBC Driver JAR | JDBC Driver Class | JDBC URL | Authentication |
Redshift |
|
| Authentication fails. |
Redshift |
|
| Authentication fails. |
PostgreSQL |
|
| Authentication fails. |
PostgreSQL |
|
| Authentication fails. |
Behavior Change
Display of labels in the output for the Redshift Select Snap
For the Redshift Select Snap, when you configure Output fields and deselect the Match data types checkbox, the display of the label name for the timestamptz
data type in the output preview varies with the two JDBC drivers. For example, consider the following configuration of the Output fields in the Redshift Select Snap.
On validation, notice the difference in the label name in the output preview. With the PostgreSQL driver, Snap displays the labels as configured in the Snap settings:
While with the Redshift JDBC driver, the Snap prefixes Redshift to the Timestamp
label. This does not impact the performance of the Snap.
The behavior of the Snap remains the same when you select the Match data types checkbox, regardless of using the PostgreSQL or the Redshift driver—the label names are displayed as configured in the Snap settings.
Have feedback? Email documentation@snaplogic.com | Ask a question in the SnapLogic Community
© 2017-2024 SnapLogic, Inc.