Uploaded image for project: 'Debezium'
  1. Debezium
  2. DBZ-7159

Fail fast during deserialization if a value is not a CloudEvent

XMLWordPrintable

    • Icon: Task Task
    • Resolution: Done
    • Icon: Major Major
    • 2.5.0.Beta1
    • None
    • core-library
    • None
    • False
    • None
    • False

      This will help to avoid different unclear exceptions such as NPEs:

      2023-11-18 04:55:04,274 ERROR  ||  Error encountered in task user-db-sink-connector-0. Executing stage 'VALUE_CONVERTER' with class 'io.debezium.converters.CloudEventsConverter'.   [org.apache.kafka.connect.runtime.errors.LogReporter]
      java.lang.NullPointerException
          at io.debezium.converters.CloudEventsConverter.reconvertData(CloudEventsConverter.java:435)
          at io.debezium.converters.CloudEventsConverter.toConnectData(CloudEventsConverter.java:381)
          at org.apache.kafka.connect.storage.Converter.toConnectData(Converter.java:91)
          at org.apache.kafka.connect.runtime.WorkerSinkTask.lambda$convertAndTransformRecord$4(WorkerSinkTask.java:528)
          at org.apache.kafka.connect.runtime.errors.RetryWithToleranceOperator.execAndRetry(RetryWithToleranceOperator.java:180)
          at org.apache.kafka.connect.runtime.errors.RetryWithToleranceOperator.execAndHandleError(RetryWithToleranceOperator.java:214)
          at org.apache.kafka.connect.runtime.errors.RetryWithToleranceOperator.execute(RetryWithToleranceOperator.java:156)
          at org.apache.kafka.connect.runtime.WorkerSinkTask.convertAndTransformRecord(WorkerSinkTask.java:528)
          at org.apache.kafka.connect.runtime.WorkerSinkTask.convertMessages(WorkerSinkTask.java:505)
          at org.apache.kafka.connect.runtime.WorkerSinkTask.poll(WorkerSinkTask.java:341)
          at org.apache.kafka.connect.runtime.WorkerSinkTask.iteration(WorkerSinkTask.java:242)
          at org.apache.kafka.connect.runtime.WorkerSinkTask.execute(WorkerSinkTask.java:211)
          at org.apache.kafka.connect.runtime.WorkerTask.doRun(WorkerTask.java:204)
          at org.apache.kafka.connect.runtime.WorkerTask.run(WorkerTask.java:259)
          at org.apache.kafka.connect.runtime.isolation.Plugins.lambda$withClassLoader$1(Plugins.java:236)
          at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
          at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
          at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
          at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
          at java.base/java.lang.Thread.run(Thread.java:829) 

      Use case: value is deserialized with CE converter, but was serialized using different converter

              Unassigned Unassigned
              romankudryashov Roman Kudryashov (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: