debezium / debezium/dbz

Get primary key for tables in snapshot from replica identity [DBZ-2037]

Open
#302 0 comments 0 reactions 0 assignees View on GitHub
component/postgresql-connector migrated-from-jira type/enhancement
Dominant language
HTML
Stars
6
Forks
8
Avg merge
2d 19h
Merged PRs (30d)
1

Description

Migrated from [DBZ-2037](https://issues.redhat.com/browse/DBZ-2037)

Currently, we have several tables in our DB that we'd like to replicate, and that don't have a primary key. Now, since they're in a DB with logical replication turned on (else Debezium would be kind of pointless), we've manually altered the {{REPLICA IDENTITY}} of those tables to be {{FULL}}. We then have to duplicate this logic in the Debezium configuration so as not to send null keys.

It would be a nice bonus if Debezium could utilize the same logic as Postgres for unconfigured tables - or if not the exact same logic, at least taking a hint from the replica identity if the table has no primary key or special configuration in config.

Contributor guide

Open the contributing guide

Research direction

Start by reading the migrated DBZ-2037 issue and reviewing PostgreSQL replica identity behavior, especially FULL for tables without primary keys. Trace how Debezium chooses keys for unconfigured tables; done means its key selection follows the replica identity without requiring duplicated configuration.

Written by the indexing model from the issue text.

Assessment

Tech stack
postgresql
Domain
databases
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.