From 9e9c2fc2abb1ead88149684a2f3b2302b6c19b3c Mon Sep 17 00:00:00 2001 From: bep7520 Date: Wed, 21 Jul 2021 15:19:44 -0500 Subject: [PATCH] DBZ-3769 Throw sqlexception from postgres message decoder --- .../connection/pgoutput/PgOutputMessageDecoder.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/debezium-connector-postgres/src/main/java/io/debezium/connector/postgresql/connection/pgoutput/PgOutputMessageDecoder.java b/debezium-connector-postgres/src/main/java/io/debezium/connector/postgresql/connection/pgoutput/PgOutputMessageDecoder.java index 72d35acdd..6841316ab 100644 --- a/debezium-connector-postgres/src/main/java/io/debezium/connector/postgresql/connection/pgoutput/PgOutputMessageDecoder.java +++ b/debezium-connector-postgres/src/main/java/io/debezium/connector/postgresql/connection/pgoutput/PgOutputMessageDecoder.java @@ -326,7 +326,8 @@ private void handleRelationMessage(ByteBuffer buffer, TypeRegistry typeRegistry) decoderContext.getSchema().applySchemaChangesForTable(relationId, table); } - private List getTableColumnsFromDatabase(PostgresConnection connection, DatabaseMetaData databaseMetadata, TableId tableId) { + private List getTableColumnsFromDatabase(PostgresConnection connection, DatabaseMetaData databaseMetadata, TableId tableId) + throws SQLException { List readColumns = new ArrayList<>(); try { try (ResultSet columnMetadata = databaseMetadata.getColumns(null, tableId.schema(), tableId.table(), null)) { @@ -338,6 +339,7 @@ private List getTableColumnsFromDatabase(Postgres } catch (SQLException e) { LOGGER.warn("Failed to read column metadata for '{}.{}'", tableId.schema(), tableId.table()); + throw e; // todo: DBZ-766 Should this throw the exception or just log the warning? }