-
Notifications
You must be signed in to change notification settings - Fork 614
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(streaming): permit-based back-pressure in exchange #6170
Conversation
Signed-off-by: Bugen Zhao <i@bugenzhao.com>
Signed-off-by: Bugen Zhao <i@bugenzhao.com>
Signed-off-by: Bugen Zhao <i@bugenzhao.com>
Signed-off-by: Bugen Zhao <i@bugenzhao.com>
Codecov Report
@@ Coverage Diff @@
## main #6170 +/- ##
==========================================
+ Coverage 74.18% 74.19% +0.01%
==========================================
Files 944 945 +1
Lines 152310 152387 +77
==========================================
+ Hits 112992 113066 +74
- Misses 39318 39321 +3
Flags with carried forward coverage won't be shown. Click here to find out more.
📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
Signed-off-by: Bugen Zhao <i@bugenzhao.com>
Signed-off-by: Bugen Zhao <i@bugenzhao.com>
Signed-off-by: Bugen Zhao <i@bugenzhao.com>
LGTM! |
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
Signed-off-by: Bugen Zhao <i@bugenzhao.com>
* add channel Signed-off-by: Bugen Zhao <i@bugenzhao.com> * remote permits Signed-off-by: Bugen Zhao <i@bugenzhao.com> * extract batched permits Signed-off-by: Bugen Zhao <i@bugenzhao.com> * add license header Signed-off-by: Bugen Zhao <i@bugenzhao.com> * remove const Signed-off-by: Bugen Zhao <i@bugenzhao.com> * add doc Signed-off-by: Bugen Zhao <i@bugenzhao.com> * add more doc Signed-off-by: Bugen Zhao <i@bugenzhao.com> * gen ts proto * add more doc Signed-off-by: Bugen Zhao <i@bugenzhao.com> Signed-off-by: Bugen Zhao <i@bugenzhao.com>
The hanging channel is a channel that's external for a table fragments subgraph. We introduced this for MV on MV long ago, but after #4045 and #6170, this becomes not that necessary: we can simply create a pair of channels if not found in the `ChannelPool`. https://github.com/risingwavelabs/risingwave/blob/b1891423a68b98dff39d7220a891cdea8bd67951/src/stream/src/task/mod.rs#L123-L138 This is a preparation step for #7908. Approved-By: yezizp2012
I hereby agree to the terms of the Singularity Data, Inc. Contributor License Agreement.
What's changed and what's your intention?
Implement the permit-based back-pressure in exchange. doc
Take TPCH Q12 mentioned in the doc as an example:
Before:

After:

Checklist
./risedev check
(or alias,./risedev c
)Refer to a related PR or issue link (optional)