[FLINK-39582][postgres] Allow logical messages#4387
[FLINK-39582][postgres] Allow logical messages#4387eskabetxe wants to merge 1 commit intoapache:masterfrom
Conversation
|
@GOODBOY008 can you help review this? |
|
@eskabetxe , If it is introduced, what happens if the messages emitted via pg_logical_emit_message do not align with the table schema?If you insist on introducing it, please add a configuration option to explicitly enable it. Do not alter the existing logic to avoid disrupting currently running jobs that are working as expected. |
|
Hi @loserwang1024 |
+1 to introduce a config and only expose it in DataStream API. We should always disabled this feature for SQL&YAML API as it will crush the entire pipeline once we delivered this kind of event, WDYT? |
What is the purpose of the change
Enable Postgres logical decoding messages produced by pg_logical_emit_message(transactional, prefix, content) to flow through to the user's DebeziumDeserializationSchema. Today these records are silently dropped before reaching deserialization. See [FLINK-39582] for the problem statement and root cause.
Brief change log
Base extension hooks (no domain logic; pure extensibility):
Postgres connector:
Configuration:
Design notes
Verifying this change
Added tests under flink-connector-postgres-cdc/src/test/java/.../source/reader/: