Table of Contents | ||
---|---|---|
|
FAQ for the
...
Vertica jOOQ Upgrade
What is happening?
We plan to upgrade the JDBC driver The jOOQ library for the PostgreSQL Vertica Snap Pack is upgraded from v9v3.49.1207 1 to v42v3.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 PostgreSQL Snap Pack as the default JDBC driver17.x.
Why are we upgrading the
...
Vertica jOOQ library?
To improve security, compatibility, performance, stability, and reliability.
...
This upgrade will be available on July 10 as part of 437patches26900
(Latest release) on June 28, 2024, and will be part of the 4.38 GA release on August 14, 2024 (Stable release).
...
Yes, you will be impacted if you use the default version. The impact might be minimal if you use the latest driver library or a higher version than the v42v3.7.2 (Java 8) JDBC driver17.x.
To check the version of the current JAR file that jOOQ version you are using, refer to PostgreSQL's latest versionscheck the POM File (if using Maven).
To know the jOOQ library JAR file that is in use, follow these steps:
Open the JAR file using a ZIP utility or a JAR viewer tool.
Look for the
META-INF/MANIFEST.MF
file in the JAR and check the version.
...
you can do it using command-line tools such as jar or by inspecting the metadata of the JAR file.
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 driverlibrary. However, if you currently use the default version and want to revert to the previous version behavior, we recommend you use the postgres v3.9.41.1207.jar.
We recommend you investigate your pipelines and check the Snaps downstream of PostgreSQL snaps Vertica 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
...
.
...
...
Upload that JAR file to your Org’s shared folder and specify it in the PostgreSQL Account.
...
Validate the account.
...
After you verify that the updated JDBC driver works, you may remove it.
How do you override the behavior changes?
Use the postgres 9.4.1207.jar
from v9.4.1207 jOOQ library v3.17.x from v3.9.1 to maintain the same behavior as before the driver library upgrade.
Behavior Changes
This driver library upgrade will result resulted in specific behavior changes in the Snap Pack. These changes are for status codes and success and failure messages. This table lists these changes:
...
Previously, when you passed
NaN
toDate/Integer/Timestamp
data type, the Vertica -Execute Snap displayed a null value in the reason for the error message. The Snap now displays a query in the reason.Change in the output message of Vertica Snaps where the Snaps displayed date, time, and timestamp as objects in the output message. Now, the Snap displays the values directly.
Vertica Snaps | Scenario | Error/Output from the |
Old ( |
v3. |
9. |
1) |
JOOQ Library | Error/Output from the |
New ( |
v3. |
When you provide multiple statements in the SQL Statement field, the Snap fails.
Status: 0
Output message: Success
Status: -3
Error message: Batch operation failed
Table columns of the Array
type now output the data as a list instead of a string.
Output as a string:
{array_col_value={a, b, c}}
Output message is now in an array:
{array_col_value=[a, b, c]}
When the input value provided for a column is invalid for the column type.
Error Message: SQL operation failed
Reason: ERROR: invalid input syntax for type "DataType": "Invalid input" Position: <number>, error code: 0, SQL state: 22007
Error Message: Batch operation failed
Reason: Batch entry 0 <query> was aborted: ERROR: invalid input syntax for type 'Col DataType' : "invalid input" Position: <number> Call getNextException to see other errors in the batch., error code: 0, SQL state: 22007, next exception: ERROR: invalid input syntax for type 'Col DataType': "invalid input" Position: <number>
When the metadata is returned from the Snap’s second output view.
The original number of columns in the input data is displayed in the output.
In Select Snap, the second output view, some new columns are introduced.
For example, IS_GENERATEDCOLUMN , REF_GENERATION, SELF_REFERENCING_COL_NAME, TYPE_CAT, TYPE_NAME, TYPE_SCHEM
When the delete condition has an unterminated quote string.
Error message: SQL operation failed
Reason : ERROR: unterminated quoted string at or near "' )"\n Position: <number>, error code: 0, SQL state: 42601
Error message: SQL operation failed
Reason: "SQL [<query>]; Unterminated string literal started at position <number> in SQL <query>. Expected char"
When you provide the following query:
"create table <name> as <query>"
Status : 0
Message : Success
Status: 5
The <number> for Status indicates the number of rows used from the source to create the new table.
Message: Success
All PostgreSQL Snaps
When the Dynamic Account has incorrect credentials.
Error : SQL operation failed
Reason : "java.lang.RuntimeException: Driver org.postgresql.Driver claims to not accept jdbcUrl, jdbc:postgresql://??postgresql-v10.nia.snaplogic.com:5432/snapteam?OpenSourceSubProtocolOverride=true, Driver org.postgresql.Driver claims to not accept jdbcUrl, jdbc:postgresql://??postgresql-v10.nia.snaplogic.com:5432/snapteam?OpenSourceSubProtocolOverride=true"
Error message: SQL operation failed
Reason : "Failed to retrieve a database connection."
...
17.x) JOOQ Library | |||
Vertica-Execute | When you pass |
|
|
When you pass a special character( ' ). |
|
| |
Vertica-Select
| When Order by field is expression enabled. | Output message: | Output message: |
When you provide a value in Order by field. | Output message:
| Output message:
| |
When you provide table and schema name as pipeline parameters. | Output message:
| Output message:
| |
When you provide a table and schema name as input from Snap. | Output message:
| Output message:
| |
When you select the Match data types checkbox. | Output message:
| Output message:
| |
When you preserve date and time values. | Output message:
| Output message:
| |
Vertica-Bulk Load | When the Auto commit checkbox is deselected. | Output message:
| Output message:
|
Vertica-Lookup Vertica-Delete | When you provide a value in the Number of retries. | Output message:
| Output message:
|
All Vertica Snaps | Boundary values check. | Output message:
| Output message:
|