-
Notifications
You must be signed in to change notification settings - Fork 640
feat(streaming): introduce sort operator based on watermark #6085
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
Conversation
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.
license-eye has totally checked 2275 files.
Valid | Invalid | Ignored | Fixed |
---|---|---|---|
1080 | 2 | 1193 | 0 |
Click to see the invalid file list
- src/stream/src/executor/sort.rs
- src/stream/src/from_proto/sort.rs
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Please fix clippy lints |
Codecov Report
@@ Coverage Diff @@
## main #6085 +/- ##
==========================================
- Coverage 74.36% 74.20% -0.16%
==========================================
Files 935 939 +4
Lines 150096 150811 +715
==========================================
+ Hits 111612 111915 +303
- Misses 38484 38896 +412
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 |
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. Great job!!!
You may need also to update the generated proto for the dashboard. |
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. Great job 🚀
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.
Good job! Done with high quality
for (owned_vnode, _) in newly_owned_vnodes | ||
.iter() | ||
.filter(|is_set| *is_set) | ||
.enumerate() |
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.
May add a new function on Bitmap
to iterate on all set bits.
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 added this function in the WatermarkFilter branch. I'll modify this to use the function in my PR.
I hereby agree to the terms of the Singularity Data, Inc. Contributor License Agreement.
What's changed and what's your intention?
Summarize your change
Introduce sort operator, which consumes unordered input and outputs ordered data based on watermark.
How does this PR work? Need a brief introduction for the changed logic
View implementation design doc for basic logics. There's also detailed comments within the code in this PR.
Describe any limitations of the current code
Checklist
./risedev check
(or alias,./risedev c
)Refer to a related PR or issue link (optional)
StreamSort
plan node #6070Sort
operator #6060