You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "Valeria Vasylieva (JIRA)" <ji...@apache.org> on 2019/03/01 14:11:00 UTC

[jira] [Commented] (KAFKA-7157) Connect TimestampConverter SMT doesn't handle null values

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

Valeria Vasylieva commented on KAFKA-7157:
------------------------------------------

Issue can be still reproduced, [~rhauch] I'll fix it, if you don't mind.

> Connect TimestampConverter SMT doesn't handle null values
> ---------------------------------------------------------
>
>                 Key: KAFKA-7157
>                 URL: https://issues.apache.org/jira/browse/KAFKA-7157
>             Project: Kafka
>          Issue Type: Bug
>          Components: KafkaConnect
>    Affects Versions: 0.10.2.0
>            Reporter: Randall Hauch
>            Priority: Major
>
> TimestampConverter SMT is not able to handle null values (in any versions), so it's always trying to apply the transformation to the value. Instead, it needs to check for null and use the default value for the new schema's field.
> {noformat}
> [2018-07-03 02:31:52,490] ERROR Task MySourceConnector-2 threw an uncaught and unrecoverable exception (org.apache.kafka.connect.runtime.WorkerTask) 
> java.lang.NullPointerException 
> at org.apache.kafka.connect.transforms.TimestampConverter$2.toRaw(TimestampConverter.java:137) 
> at org.apache.kafka.connect.transforms.TimestampConverter.convertTimestamp(TimestampConverter.java:440) 
> at org.apache.kafka.connect.transforms.TimestampConverter.applyValueWithSchema(TimestampConverter.java:368) 
> at org.apache.kafka.connect.transforms.TimestampConverter.applyWithSchema(TimestampConverter.java:358) 
> at org.apache.kafka.connect.transforms.TimestampConverter.apply(TimestampConverter.java:275) 
> at org.apache.kafka.connect.runtime.TransformationChain.apply(TransformationChain.java:38) 
> at org.apache.kafka.connect.runtime.WorkerSinkTask.convertMessages(WorkerSinkTask.java:435) 
> at org.apache.kafka.connect.runtime.WorkerSinkTask.poll(WorkerSinkTask.java:264) 
> at org.apache.kafka.connect.runtime.WorkerSinkTask.iteration(WorkerSinkTask.java:182) 
> at org.apache.kafka.connect.runtime.WorkerSinkTask.execute(WorkerSinkTask.java:150) 
> at org.apache.kafka.connect.runtime.WorkerTask.doRun(WorkerTask.java:146) 
> at org.apache.kafka.connect.runtime.WorkerTask.run(WorkerTask.java:190) 
> 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:1149) 
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 
> at java.lang.Thread.run(Thread.java:748) 
> [2018-07-03 02:31:52,491] ERROR Task is being killed and will not recover until manually restarted (org.apache.kafka.connect.runtime.WorkerTask) 
> {noformat}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)