[ 
https://issues.apache.org/jira/browse/KAFKA-8523?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16932686#comment-16932686
 ] 

Randall Hauch commented on KAFKA-8523:
--------------------------------------

[~frederic.tardif], thanks for the comment.

[~gunnar.morling]'s last comment was:

{quote}
So I would suggest I simply update my PR so that it passes on tombstones 
unmodified and that should be good enough.
{quote}

As mentioned above, I agree with this approach: *tombstones should be left 
as-is and not modified*. Note that [~gunnar.morling] hasn't yet updated the PR, 
but it will not be merged until that happens.

Second, any new configuration on any SMT would be prefixed in the connector 
config with  `transforms.<name>.`, and thus it would not clash with any 
existing connector or SMT configuration. For example, *+_if_+* we were to add a 
new SMT property named `behavior.on.null.values`, then it would be used in a 
connector configuration like:

{code:java}
transforms=MyInsertField
transforms.MyInsertField.class=org.apache.kafka.connect.transforms.InsertField
transforms.MyInsertField.behavior.on.null.values=skip
{code}

*However, as mentioned above, both Gunnar and I agreed above that we don't 
think a new configuration is necessary*.

> InsertField transformation fails when encountering tombstone event
> ------------------------------------------------------------------
>
>                 Key: KAFKA-8523
>                 URL: https://issues.apache.org/jira/browse/KAFKA-8523
>             Project: Kafka
>          Issue Type: Bug
>          Components: KafkaConnect
>            Reporter: Gunnar Morling
>            Priority: Major
>         Attachments: image-2019-09-17-15-53-44-038.png
>
>
> When applying the {{InsertField}} transformation to a tombstone event, an 
> exception is raised:
> {code}
> org.apache.kafka.connect.errors.DataException: Only Map objects supported in 
> absence of schema for [field insertion], found: null
>       at 
> org.apache.kafka.connect.transforms.util.Requirements.requireMap(Requirements.java:38)
>       at 
> org.apache.kafka.connect.transforms.InsertField.applySchemaless(InsertField.java:138)
>       at 
> org.apache.kafka.connect.transforms.InsertField.apply(InsertField.java:131)
>       at 
> org.apache.kafka.connect.transforms.InsertFieldTest.tombstone(InsertFieldTest.java:128)
> {code}
> AFAICS, the transform can still be made working in in this case by simply 
> building up a new value map from scratch.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to