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)