-
Notifications
You must be signed in to change notification settings - Fork 590
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: support scale SourceBackfill executor #16825
Conversation
75c65af
to
f7f957f
Compare
This stack of pull requests is managed by Graphite. Learn more about stacking. |
f7f957f
to
710adf4
Compare
3493eaa
to
3311bdc
Compare
9509e3f
to
3cc05b4
Compare
46b90b9
to
441460b
Compare
3cc05b4
to
c14100d
Compare
a681dc0
to
ff480ff
Compare
323feeb
to
15d8287
Compare
32c62c6
to
f430814
Compare
8f0f545
to
1854392
Compare
f430814
to
2391b38
Compare
2391b38
to
878e494
Compare
878e494
to
c0a2cc1
Compare
e2fd423
to
a54a89f
Compare
be7279c
to
e4499af
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.
Scale part lgtm
We may need to conduct actual tests on the behavior of sources with split reduction like Kinesis during scaling (accompanied by split reduction). #9961
Signed-off-by: xxchan <xxchan22f@gmail.com> add notes Signed-off-by: xxchan <xxchan22f@gmail.com> Merge remote-tracking branch 'origin/main' into xxchan/scale-source add sim test discard minor changes Signed-off-by: xxchan <xxchan22f@gmail.com>
e4499af
to
f825c33
Compare
pub async fn alter_parallelism( | ||
&self, | ||
table_id: u32, | ||
parallelism: PbTableParallelism, | ||
mut deferred: bool, | ||
) -> MetaResult<()> { | ||
tracing::info!("alter parallelism"); |
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.
tracing::info!("alter parallelism"); |
# # Note: the parallelism depends on the risedev profile. | ||
# # So scale tests below are commented out. |
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 think these unenforced tests can be stale quickly. Shall we remove this as we've implemented madsim tests?
Signed-off-by: xxchan xxchan22f@gmail.com
I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.
What's changed and what's your intention?
part of #16003
Their are 2 main things to consider:
Source
,SourceBackfill
need to migrate the connector splits. And the new assignment need to be aligned with the upstream. This part is relatively trivial.SourceBackfill
is connected to the upstreamSource
with aNoShuffle
. This makes it trickier, as the logic of scalingNoShuffle
is relatively complex (scaling upstream vs scaling downstream is different). I'm not sure I've done this part correct.Added sim tests (low-level
reschedule
) and manual e2e tests (high-levelALTER PARALLELISM
).reschedule_lock
Checklist
./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.