-
Notifications
You must be signed in to change notification settings - Fork 600
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
fix(batch): Stop polling after data stream returns None
#4371
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.
Also notice this problem
Codecov Report
@@ Coverage Diff @@
## main #4371 +/- ##
==========================================
- Coverage 74.47% 74.46% -0.02%
==========================================
Files 846 846
Lines 123168 123188 +20
==========================================
+ Hits 91726 91727 +1
- Misses 31442 31461 +19
Flags with carried forward coverage won't be shown. Click here to find out more.
📣 Codecov can now indicate which changes are the most critical in Pull Requests. Learn more |
dfa532f
to
68c8662
Compare
// This is possible since when we have limit executor in parent | ||
// stage, it may early stop receiving data from downstream, which | ||
// leads to close of channel. |
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 doubt whether this statement is still valid. Seems like I can directly unwrap...
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.
No, it's valid. LimitExecutor or TopNExecutor still may early stop receiver.
x => { | ||
return Err(InternalError(format!("Failed to send data: {:?}", x)))?; | ||
if let Some(data_chunk) = res { | ||
if let Err(e) = sender.send(Some(data_chunk?)).await { |
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.
If the chunk is Some, I think unwrap on send error is make sense.
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.
No, this is possible with LimitExecutor
…labs#4371) * fix(batch): Stop polling after data stream returns None * Fix comments
I hereby agree to the terms of the Singularity Data, Inc. Contributor License Agreement.
What's changed and what's your intention?
Task execution should stop polling data stream after returning
None
.Checklist
./risedev check
(or alias,./risedev c
)Refer to a related PR or issue link (optional)
Closes #4132