2017-07-03 3 views
1

Ceci est probablement quelque chose d'évident, cependant, je ne peux pas le comprendre.Kafka Connect ne parvient pas à désérialiser le décalage à chaque fois

Chaque fois que je commence mon connecteur source, il ne parvient pas à lire le décalage stocké dans un fichier avec l'erreur suivante:

21:05:01:519 | ERROR | pool-1-thread-1 | o.a.k.c.s.OffsetStorageReaderImpl | CRITICAL: Failed to deserialize offset data when getting offsets for tas 
k with namespace zohocrm-source-calls. No value for this data will be returned, which may break the task or cause it to skip some data. This could ei 
ther be due to an error in the connector implementation or incompatible schema. 
org.apache.kafka.connect.errors.DataException: JsonConverter with schemas.enable requires "schema" and "payload" fields and may not contain additiona 
l fields. If you are trying to deserialize plain JSON data, set schemas.enable=false in your converter configuration. 
     at org.apache.kafka.connect.json.JsonConverter.toConnectData(JsonConverter.java:309) 

Voici mes valeurs StandaloneConfig:

access.control.allow.methods = 
    access.control.allow.origin = 
    bootstrap.servers = [localhost:9092] 
    internal.key.converter = class org.apache.kafka.connect.json.JsonConverter 
    internal.value.converter = class org.apache.kafka.connect.json.JsonConverter 
    key.converter = class io.confluent.connect.avro.AvroConverter 
    offset.flush.interval.ms = 60000 
    offset.flush.timeout.ms = 5000 
    offset.storage.file.filename = maxoptra-data.offset 
    rest.advertised.host.name = null 
    rest.advertised.port = null 
    rest.host.name = null 
    rest.port = 8083 
    task.shutdown.graceful.timeout.ms = 5000 
    value.converter = class io.confluent.connect.avro.AvroConverter 

Voici mon connecteur config:

connector.class = com.maxoptra.data.zoho.connect.ZohoCrmSourceConnector 
    key.converter = null 
    name = zohocrm-source-calls 
    tasks.max = 1 
    transforms = null 
    value.converter = null 

Veuillez nous aviser.

Merci

Répondre

0

Set key.converter.schemas.enable = true et value.converter.schemas.enable = true. Cela fera que JsonConverter essayera d'interpréter votre schéma au lieu de désérialiser le schéma par défaut qui ne correspond pas à ce que vous avez ici