[ https://issues.apache.org/jira/browse/KAFKA-9763?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
John Roesler reopened KAFKA-9763: --------------------------------- > Recent changes to Connect's InsertField will fail to inject field on key of > tombstone record > -------------------------------------------------------------------------------------------- > > Key: KAFKA-9763 > URL: https://issues.apache.org/jira/browse/KAFKA-9763 > Project: Kafka > Issue Type: Bug > Components: KafkaConnect > Affects Versions: 1.0.3, 1.1.2, 2.0.2, 2.1.2, 2.2.2, 2.4.0, 2.3.1, 2.5.0 > Reporter: Randall Hauch > Assignee: Randall Hauch > Priority: Major > Fix For: 1.0.3, 1.1.2, 2.0.2, 2.1.2, 2.2.3, 2.3.2, 2.4.2, 2.5.1 > > > This is a regression due to the changes for KAFKA-8523. > KAFKA-8523 was backported to multiple versions, and was released into 2.2.2, > 2.3.1, and 2.4.0, and will soon be released in 2.5.0. > Unfortunately, that fix always makes the `InsertField` SMT skip all tombstone > records, even when using the `InsertField$Key`. > Rather than: > {code:java} > private boolean isTombstoneRecord(R record) { > return record.value() == null; > } > {code} > the correct behavior would be: > {code:java} > private boolean isTombstoneRecord(R record) { > return operatingValue(record) == null; > } > {code} > The method no longer detects just tombstone methods, so the code should be > refactored to return the record if the operatingValue for the record (which > for `InsertField$Key` is the record key and for `InsertField$Value` is the > record value) is null. > -- This message was sent by Atlassian Jira (v8.3.4#803005)