-
Notifications
You must be signed in to change notification settings - Fork 335
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
[Issue 877]Fix send stuck #878
Conversation
Hi, could you upload the full error stack? I think we need to find out the real reason for doneCh can not be closed. Because doneCh is never closed means that the callback of |
In the issue link have the stack. I think wait in a channel should with select timeout context to avoid stuck. |
You are right, timeout context can avoid But |
isDone.Store(true) | ||
return msgID, ctx.Err() | ||
case <-doneCh: | ||
return msgID, err |
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.
We shouldn't return msgID and err here. They are not assigned here.
…ng as expected (#1053) Fixes #877 ### Motivation The original PR is #878. Because the original author @billowqiu has not continued to reply to the review comments for a long time, resubmit the fix here. ### Modifications - Add select for ctx and doneCh in partitionProducer.Send() --------- Co-authored-by: shenjiaqi.2769 <shenjiaqi.2769@bytedance.com>
Fixed by #1053 |
…ng as expected (#1053) Fixes #877 ### Motivation The original PR is #878. Because the original author @billowqiu has not continued to reply to the review comments for a long time, resubmit the fix here. ### Modifications - Add select for ctx and doneCh in partitionProducer.Send() --------- Co-authored-by: shenjiaqi.2769 <shenjiaqi.2769@bytedance.com> (cherry picked from commit be35740)
Fixes #877
Motivation
Use select to avoid channel stuck.
Modifications