Provide a tool to validate DDL changes [DBZ-70]
- Dominant language
- HTML
- Stars
- 6
- Forks
- 8
- Avg merge
- 2d 19h
- Merged PRs (30d)
- 1
Description
Migrated from [DBZ-70](https://issues.redhat.com/browse/DBZ-70)
Quite a few of us are looking at using the Confluent stack with their [Avro schema registry|https://github.com/confluentinc/schema-registry] as a way to serialize Debezium data. The schema registry prevents backwards incompatible schema changes on the Avro messages that flow through it (rightfully so).
This presents a problem. A DB admin (or someone else) might make a DB schema change that results in backwards incompatible messages flowing through the system (e.g. changing column types, or deleting a column).
There's currently no way for us to easily determine if a DB schema change is going to break Debezium's message compatibility. Although this appears to be a problem related to the schema registry tool, I'd argue that preventing backwards compatible changes is generally a good thing and worth doing, independent of whether the Confluent stack is used or not.
It would be nice if Debezium provided some tool that would allow us to validate our DDLs are backwards compatible before we run them on our DB tables.
Contributor guide
Research direction
The issue names no files, tests, or entry points. Start by defining how DDL changes and Debezium message compatibility should be represented and validated, then establish tests that demonstrate backward-compatible and incompatible schema changes as the completion criteria.
Written by the indexing model from the issue text.
Assessment
- Domain
- database
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100