Skip to content

Signature of org.postgresql.jdbc.TimestampUtils.toOffsetDateTime(java.lang.String) changed #2497

@busches

Description

@busches

Describe the issue
Upgrading from Postgres Driver 42.3.3 to 42.3.4 results in:

java.lang.NoSuchMethodError: 'java.time.OffsetDateTime org.postgresql.jdbc.TimestampUtils.toOffsetDateTime(java.lang.String)'
	at io.debezium.connector.postgresql.connection.PostgresDefaultValueConverter.lambda$createDefaultValueMappers$22(PostgresDefaultValueConverter.java:168)
	at io.debezium.connector.postgresql.connection.PostgresDefaultValueConverter.parseDefaultValue(PostgresDefaultValueConverter.java:77)
	at io.debezium.relational.TableSchemaBuilder.lambda$addField$9(TableSchemaBuilder.java:391)
	at java.base/java.util.Optional.flatMap(Unknown Source)

Driver Version?
42.3.4

Java Version?
17

OS Version?
Ubunutu Focal (20.04)

PostgreSQL Version?
11.3

To Reproduce
Use 'java.time.OffsetDateTime org.postgresql.jdbc.TimestampUtils.toOffsetDateTime(java.lang.String)' in your code or a library (in this case Debezium) with 42.3.3, upgrade to 42.3.4.

Expected behaviour
I would not expect the public API to change in a bug fix version and if it was, to be called out as a breaking change in the notes. The Java Doc still shows the old version: https://jdbc.postgresql.org/documentation/publicapi/org/postgresql/jdbc/TimestampUtils.html#toLocalDateTime-java.lang.String-

This change was introduced here: #2467

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions