Skip to content

[feat][io] Add Debezium CockroachDB source connector #68

Description

@david-streamlio

Motivation

Debezium ships a CockroachDB source connector (io.debezium:debezium-connector-cockroachdb, 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.

Unlike the other gaps, this connector does not use the logical-decoding or binlog machinery — it consumes CockroachDB's native changefeeds.

Proposal

Add a debezium/cockroachdb module (pulsar-io-debezium-cockroachdb) following the structure of the existing Debezium modules:

  • DebeziumCockroachDbSource extending DebeziumSource
  • include("debezium:pulsar-io-debezium-cockroachdb") in settings.gradle.kts
  • debezium-connector-cockroachdb = { module = "io.debezium:debezium-connector-cockroachdb" } in the version catalog
  • NAR packaging + distribution wiring
  • A Testcontainers integration test using the cockroachdb/cockroach image (start-single-node --insecure), enabling rangefeeds (SET CLUSTER SETTING kv.rangefeed.enabled = true) and creating a changefeed in setup

Notes

Identified by a scan of the Debezium connector catalog against our connector inventory.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions