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

Multiple Transforms Don't Function with the Operator API

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • None
    • 2.7.0.Final
    • debezium-operator
    • None
    • Important

      When you apply multiple transformations, you run into a bug with the operator where the t0,t1 isn't applied like it should be. There is something wrong with String.join(","). Realistically we just need to add a comma between.

      Also fixes the incorrect test so we can validate this better moving forward.

      Real World Example

      1 Transformation ✅
      debezium.transforms.t0.negate=true
      debezium.transforms.t0.predicate=TopicNameMatches
      debezium.transforms.t0.topic.regex=<redacted>
      debezium.transforms.t0.topic.replacement=<redacted>
      debezium.transforms.t0.type=io.debezium.transforms.ByLogicalTableRouter
      debezium.transforms=t0
       
      When you have multiple transformations ❌
      debezium.transforms.t0.negate=false
      debezium.transforms.t0.predicate=TopicNameMatches
      debezium.transforms.t0.type=<custom transform>
      debezium.transforms.t1.negate=false
      debezium.transforms.t1.predicate=TopicNameMatches
      debezium.transforms.t1.regex=<redacted>
      debezium.transforms.t1.replacement=<redacted
      debezium.transforms.t1.type=org.apache.kafka.connect.transforms.RegexRouter
      debezium.transforms.t2.negate=false
      debezium.transforms.t2.predicate=TopicNameMatches
      debezium.transforms.t2.type=<custom transform>
      debezium.transforms.t3.negate=false
      debezium.transforms.t3.predicate=TopicNameMatches
      debezium.transforms.t3.type=<custom transform>
      debezium.transforms=

      Note the debezium.transforms is empty in the second example

      What Debezium connector do you use and what version?

      Not applicable

      What is the connector configuration?

      Posted above

      What is the captured database version and mode of depoyment?

      Not applicable

      What behaviour do you expect?

      I'd expect transforms to be populated

      What behaviour do you see?

      With multiple transforms it isn't populated

      Do you see the same behaviour using the latest relesead Debezium version?

      Yes

      Do you have the connector logs, ideally from start till finish?

      Not applicable

      How to reproduce the issue using our tutorial deployment?

      Not applicable

              Unassigned Unassigned
              ryanvanhuuksloot Ryan van Huuksloot (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: