You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "Ewen Cheslack-Postava (JIRA)" <ji...@apache.org> on 2017/07/21 03:57:01 UTC

[jira] [Assigned] (KAFKA-5535) Transformations - tranformations for value broken on tombstone events

     [ https://issues.apache.org/jira/browse/KAFKA-5535?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ewen Cheslack-Postava reassigned KAFKA-5535:
--------------------------------------------

    Assignee: Ewen Cheslack-Postava

> Transformations - tranformations for value broken on tombstone events
> ---------------------------------------------------------------------
>
>                 Key: KAFKA-5535
>                 URL: https://issues.apache.org/jira/browse/KAFKA-5535
>             Project: Kafka
>          Issue Type: Bug
>          Components: KafkaConnect
>    Affects Versions: 0.10.2.1
>         Environment: Unbuntu 14.04
> Java 8
>            Reporter: Yelei Wu
>            Assignee: Ewen Cheslack-Postava
>              Labels: newbie
>
> I'm trying to use the transformation for Kafka Connect and running into issues.
> The tranformation configuration is:
> -----------------
> "transforms": "GetAfter",
> "transforms.GetAfter.type": "org.apache.kafka.connect.transforms.ExtractField$Value",
> "transforms.GetAfter.field": "after",
> -----------------
> And I got the following errors occasionally:
> -----------------
> org.apache.kafka.connect.errors.DataException: Only Map objects supported in absence of schema for [field extraction], found: null
> 	at org.apache.kafka.connect.transforms.util.Requirements.requireMap(Requirements.java:38)
> 	at org.apache.kafka.connect.transforms.ExtractField.apply(ExtractField.java:57)
> 	at org.apache.kafka.connect.runtime.TransformationChain.apply(TransformationChain.java:39)
> 	at org.apache.kafka.connect.runtime.WorkerSinkTask.convertMessages(WorkerSinkTask.java:408)
> 	at org.apache.kafka.connect.runtime.WorkerSinkTask.poll(WorkerSinkTask.java:249)
> 	at org.apache.kafka.connect.runtime.WorkerSinkTask.iteration(WorkerSinkTask.java:179)
> 	at org.apache.kafka.connect.runtime.WorkerSinkTask.execute(WorkerSinkTask.java:148)
> 	at org.apache.kafka.connect.runtime.WorkerTask.doRun(WorkerTask.java:139)
> 	at org.apache.kafka.connect.runtime.WorkerTask.run(WorkerTask.java:182)
> 	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
> 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
> 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> 	at java.lang.Thread.run(Thread.java:745)
> ----------------- 
> Seems that tombstone events break the transformation, but after checking the source code for Transformations on Value (ExtractField$Value, ValueToKey, MaskField$Value, ReplaceField$Value), none of them handles tombstone events explicitly, none of them work through Tombstone events neither.
> Null check in those transformations may be nessesary.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)