diff --git a/debezium-connector-postgres/src/main/java/io/debezium/connector/postgresql/transforms/yugabytedb/YBExtractNewRecordState.java b/debezium-connector-postgres/src/main/java/io/debezium/connector/postgresql/transforms/yugabytedb/YBExtractNewRecordState.java index 29d21387990..355ec82afb8 100644 --- a/debezium-connector-postgres/src/main/java/io/debezium/connector/postgresql/transforms/yugabytedb/YBExtractNewRecordState.java +++ b/debezium-connector-postgres/src/main/java/io/debezium/connector/postgresql/transforms/yugabytedb/YBExtractNewRecordState.java @@ -33,9 +33,13 @@ public R apply(final R record) { return ret; } - Pair p = getUpdatedValueAndSchema((Struct) ret.key()); - Schema updatedSchemaForKey = p.getFirst(); - Struct updatedValueForKey = p.getSecond(); + Schema updatedSchemaForKey = ret.keySchema(); + Object updatedValueForKey = ret.key(); + if (ret.key() instanceof Struct) { + Pair p = getUpdatedValueAndSchema((Struct) ret.key()); + updatedSchemaForKey = p.getFirst(); + updatedValueForKey = p.getSecond(); + } Schema updatedSchemaForValue = null; Struct updatedValueForValue = null;