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

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions