Motivation
Debezium ships a Db2 source connector (io.debezium:debezium-connector-db2, present in the debezium-bom at our pinned version), but this repository does not wrap it. We currently wrap 5 of Debezium's 12 source connectors: MySQL, PostgreSQL, MongoDB, Oracle, and SQL Server.
Db2 is a mature Debezium connector with real enterprise demand, and its CDC model (capture tables, populated by an ASN capture agent) is close enough to SQL Server's that the existing debezium/mssql module is a reasonable structural template.
Proposal
Add a debezium/db2 module (pulsar-io-debezium-db2) following the structure of the existing Debezium modules:
DebeziumDb2Source extending DebeziumSource
include("debezium:pulsar-io-debezium-db2") in settings.gradle.kts
debezium-connector-db2 = { module = "io.debezium:debezium-connector-db2" } in the version catalog
- NAR packaging + distribution wiring
- A Testcontainers integration test using the
icr.io/db2_community/db2 image
Notes
Identified by a scan of the Debezium connector catalog against our connector inventory.
Motivation
Debezium ships a Db2 source connector (
io.debezium:debezium-connector-db2, present in thedebezium-bomat our pinned version), but this repository does not wrap it. We currently wrap 5 of Debezium's 12 source connectors: MySQL, PostgreSQL, MongoDB, Oracle, and SQL Server.Db2 is a mature Debezium connector with real enterprise demand, and its CDC model (capture tables, populated by an ASN capture agent) is close enough to SQL Server's that the existing
debezium/mssqlmodule is a reasonable structural template.Proposal
Add a
debezium/db2module (pulsar-io-debezium-db2) following the structure of the existing Debezium modules:DebeziumDb2SourceextendingDebeziumSourceinclude("debezium:pulsar-io-debezium-db2")insettings.gradle.ktsdebezium-connector-db2 = { module = "io.debezium:debezium-connector-db2" }in the version catalogicr.io/db2_community/db2imageNotes
task.idgap as SQL Server ([Bug] Debezium SQL Server source fails to start: multi-partition connector never receives task.id #61), whereAbstractKafkaConnectSourcenever callsconnector.taskConfigs()for Debezium sources. [Bug] Debezium SQL Server source fails to start: multi-partition connector never receives task.id #61 should ideally land first.com.ibm.db2:jcc) reaches the NAR at runtime;debezium-connector-db2may not bundle it. (For comparison,debezium-connector-oracledoes pullojdbc11transitively — verified in [improve][test] Add Debezium Oracle source integration test #62.)GenericContainerpattern (see the Testcontainers version conflict noted in [improve][test] Add Debezium Oracle source integration test #62).Identified by a scan of the Debezium connector catalog against our connector inventory.