-
Notifications
You must be signed in to change notification settings - Fork 705
fix(streaming): shared executor keyspace #156
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
Codecov Report
@@ Coverage Diff @@
## main #156 +/- ##
=========================================
Coverage 74.65% 74.65%
Complexity 2654 2654
=========================================
Files 834 834
Lines 47883 47888 +5
Branches 1562 1562
=========================================
+ Hits 35747 35752 +5
Misses 11337 11337
Partials 799 799
Flags with carried forward coverage won't be shown. Click here to find out more.
Continue to review full report at Codecov.
|
BugenZhao
left a comment
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.
How about directly assembling a real operator_id here, so that we can only pass a single parameters to initialization of Keyspace?
// We assume that the operator_id of different instances from the same RelNode will be the
// same.
let executor_id = ((actor_id as u64) << 32) + node.get_operator_id();
+ let operator_id = ((fragment_id as u64) << 32) + node.get_operator_id();
- let operator_id = node.get_operator_id().try_into().unwrap();
Using |
Actually |
Well, if we treat |
What's changed and what's your intention?
As title, for shared executor,
operator_idgenerated in frontend is not globally unique(only unique since server start within itself), we should usefragment_id+operator_idas its keyspace.Checklist
Refer to a related PR or issue link (optional)