You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Yuqi Li (JIRA)" <ji...@apache.org> on 2017/09/29 19:28:00 UTC

[jira] [Created] (KAFKA-5996) JsonConverter generates "Mismatching schema" DataException

Yuqi Li created KAFKA-5996:
------------------------------

             Summary: JsonConverter generates "Mismatching schema" DataException
                 Key: KAFKA-5996
                 URL: https://issues.apache.org/jira/browse/KAFKA-5996
             Project: Kafka
          Issue Type: Bug
          Components: KafkaConnect
    Affects Versions: 0.11.0.0, 0.10.2.1, 0.10.2.0, 0.10.1.1, 0.10.1.0, 0.10.0.1, 0.10.0.0
            Reporter: Yuqi Li


Run connect-standalone.sh with original connect-standalone.properties and custom jdbc source connect configuration.

part of the jdbc source connect configuration:

connector.class=io.confluent.connect.jdbc.JdbcSourceConnector
query=Select * from ......
poll.interval.ms=45000
transforms=MakeMap, InsertSourceId, InsertSourceEvent
transforms.MakeMap.type=org.apache.kafka.connect.transforms.HoistField$Value
transforms.MakeMap.field=emailRequest
transforms.InsertSourceId.type=org.apache.kafka.connect.transforms.InsertField$Value
transforms.InsertSourceId.static.field=id
transforms.InsertSourceId.static.value=1
transforms.InsertSourceEvent.type=org.apache.kafka.connect.transforms.InsertField$Value
transforms.InsertSourceEvent.static.field=event
transforms.InsertSourceEvent.static.value=REMINDER_EMAIL

When the source connect starts, the first iteration(executing the query) runs ok, but 45 seconds later, it throws following exception:
org.apache.kafka.connect.errors.DataException: Mismatching schema.
        at org.apache.kafka.connect.json.JsonConverter.convertToJson(JsonConverter.java:647)
        at org.apache.kafka.connect.json.JsonConverter.convertToJson(JsonConverter.java:650)
        at org.apache.kafka.connect.json.JsonConverter.convertToJsonWithEnvelope(JsonConverter.java:537)
        at org.apache.kafka.connect.json.JsonConverter.fromConnectData(JsonConverter.java:290)
        at org.apache.kafka.connect.runtime.WorkerSourceTask.sendRecords(WorkerSourceTask.java:198)
        at org.apache.kafka.connect.runtime.WorkerSourceTask.execute(WorkerSourceTask.java:168)
        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(Unknown Source)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
[2017-09-29 13:59:18,361] ERROR Task is being killed and will not recover until manually restarted (org.apache.kafka.connect.runtime.WorkerTask:149)
The SoureTask is being killed due to the exception, and the source connector is dead.




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