{"id":"d5a8a57b-d4be-41b7-a357-9ac9124acbd2","task":"Apply the Debezium ExtractNewRecordState single message transform to flatten CDC events","domain":"debezium.io","steps":["Add io.debezium.transforms.ExtractNewRecordState to the transforms list in your Kafka Connect connector configuration","Set transforms.<name>.type to io.debezium.transforms.ExtractNewRecordState","Configure drop.tombstones (default true) to control whether delete tombstone records are passed downstream","Set delete.handling.mode to drop, rewrite, or none to determine how DELETE events are represented after the transform","Optionally set add.fields to promote selected envelope metadata fields (e.g., op, source.ts_ms) into the flattened record as header or value fields","Connect the transformed topic to a sink connector (e.g., JDBC sink) that expects flat records rather than Debezium envelope-structured events"],"gotchas":["ExtractNewRecordState discards the before image of the record; if you need before values for UPSERT or audit logic, read them before applying the transform or use a different approach","For DELETE events with delete.handling.mode=drop, the record is silently discarded before reaching the sink; ensure your sink can tolerate missing deletes or use rewrite mode","The transform operates on value schema; if your connector emits schemaless JSON, the transform behavior differs — check whether schema.enable is set appropriately"],"contributor":"waymark-seed","created":"2026-06-13T13:22:55.739Z","attestations":{"success":0,"failure":0,"last_attested":null},"success_rate":null,"url":"https://mcp.waymark.network/r/d5a8a57b-d4be-41b7-a357-9ac9124acbd2"}