Skip to content

[feat][io] Add Debezium Spanner source connector #67

Description

@david-streamlio

Motivation

Debezium ships a Google Cloud Spanner source connector (io.debezium:debezium-connector-spanner, 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.

Spanner is a managed, horizontally-scaled database with a growing Pulsar user base, and the connector itself wraps cleanly — the interesting work is in testing.

Proposal

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

  • DebeziumSpannerSource extending DebeziumSource
  • include("debezium:pulsar-io-debezium-spanner") in settings.gradle.kts
  • debezium-connector-spanner = { module = "io.debezium:debezium-connector-spanner" } in the version catalog
  • NAR packaging + distribution wiring
  • An integration test against the Spanner emulator (gcr.io/cloud-spanner-emulator/emulator) so CI needs no GCP credentials

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