-
Notifications
You must be signed in to change notification settings - Fork 466
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Populate envelope/key-format/value-format columns on mz_kafka_source_tables table #30076
Populate envelope/key-format/value-format columns on mz_kafka_source_tables table #30076
Conversation
caac148
to
15d01b1
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code LGTM but I had two questions/comments
- What's happening with these columns in
mz_sources
are we keeping them but always filling them in withNULL
? - Can you update the docs for
mz_kafka_source_tables
.
Yes for now we will - I've put a task in the epic to remove those columns once we're fully migrated to the new model https://github.com/MaterializeInc/database-issues/issues/8677
Yes! |
…ka_source_tables table
15d01b1
to
329a9f6
Compare
Ah OK, we may want to hard code that into |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Ah - to clarify - these columns will still be non-null for existing kafka sources that define the envelope and encoding directly on the main source object. However for 'new model' kafka sources, they will be null and the tables will have these values defined. Once we've migrated all sources to the new model then those columns can be removed |
Ok, I understand now. In that case it's good as is. |
Motivation
Now that each individual export (table) of a Kafka source can have it's own envelope and/or encoding specified, these columns don't make much sense on the
mz_sources
catalog table. Instead, we decided to port them to themz_kafka_source_tables
catalog table -- see discussion in the referenced issue.Tips for reviewer
The large line diff in
src/catalog/src/memory/objects.rs
is just moving two methods from theSource
type to theDataSourceDesc
type for re-useChecklist
$T ⇔ Proto$T
mapping (possibly in a backwards-incompatible way), then it is tagged with aT-proto
label.