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

Avoid exception when payload id field not present

    XMLWordPrintable

Details

    • Task
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Done
    • None
    • 1.4.0.Final
    • outbox
    • None

    Description

      My outbox table has an event key column name that's different from the default "aggregateid". In that case, the "payload.id" field is still looked up with the default value which causes this exception:

      connect_1    | Caused by: org.apache.kafka.connect.errors.DataException: aggregateid is not a valid field name
      connect_1    | 	at org.apache.kafka.connect.data.Struct.lookupField(Struct.java:254)
      connect_1    | 	at org.apache.kafka.connect.data.Struct.get(Struct.java:74)
      connect_1    | 	at io.debezium.transforms.outbox.EventRouter.apply(EventRouter.java:119)
      connect_1    | 	at org.apache.kafka.connect.runtime.TransformationChain.lambda$apply$0(TransformationChain.java:50)
      connect_1    | 	at org.apache.kafka.connect.runtime.errors.RetryWithToleranceOperator.execAndRetry(RetryWithToleranceOperator.java:146)
      connect_1    | 	at org.apache.kafka.connect.runtime.errors.RetryWithToleranceOperator.execAndHandleError(RetryWithToleranceOperator.java:180)
      connect_1    | 	... 11 more
      

      Attachments

        Activity

          People

            gmorling@redhat.com Gunnar Morling
            gmorling@redhat.com Gunnar Morling
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: