Randall Hauch created KAFKA-7157:
------------------------------------

             Summary: 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


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)

Reply via email to