-
Notifications
You must be signed in to change notification settings - Fork 605
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
feat(cdc): share a changelog stream for multiple cdc tables #12535
Conversation
…ramework-multi-table
but lacks of internal tables in `show internal tables`
…ramework-multi-table
…ramework-multi-table
This reverts commit 62901e1.
…ramework-multi-table
…ramework-multi-table
21e059a
to
15b6f67
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.
It should be fine now. 😋
version, | ||
})) | ||
} | ||
} | ||
} | ||
|
||
async fn drop_source( |
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.
I have modified the drop_relation()
to support dropping the source streaming job if necessary.
https://github.com/risingwavelabs/risingwave/pull/12535/files#diff-1da683135f143ab95455c5fee12eca2dccaafe7d90b9e2cbc8c0ba330204659fR1263-R1265
if node.table_desc.is_none() { | ||
return Ok(Box::new(DummyExecutor::new())); | ||
} |
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.
Still in use:
assert_matches!(batch_plan_node.node_body, Some(NodeBody::BatchPlan(_))); |
.map(|c| { | ||
all_column_ids | ||
let (up_fragment_id, edge) = match table_job_type.as_ref() { | ||
Some(TableJobType::SharedCdcSource) => { |
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.
Will refine the dispatcher part later, I have fired an issue.
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.
Overall LGTM. Please kindly check these suggestions before merging:
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.
Generally LGTM. Not dived into the executor implementation. Mainly focused on other parts.
1ddfb3b
to
45eaf03
Compare
I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.
What's changed and what's your intention?
Part of #11079, related: #11545
Interface
FORMAT PLAIN ENCODE JSON
so it can be eliminated.The parallelism of these table jobs is set to 1TABLE
keyword should be qualified with the database name in the MySQL.Implementation
Source
type streaming job to support the cdc source job(payload jsonb, _rw_offset varchar, _rw_table_name varchar, _row_id )
._rw_table_name
columnCdcBackfillExecutor
will transform the upstream chunk to the specific schema of a table job (e.g.(v1 int, v2 int)
) before doing backfillChecklist
./risedev check
(or alias,./risedev c
)Documentation
Release note
If this PR includes changes that directly affect users or other significant modifications relevant to the community, kindly draft a release note to provide a concise summary of these changes. Please prioritize highlighting the impact these changes will have on users.
set cdc_backfill='true'