-
Notifications
You must be signed in to change notification settings - Fork 43
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
Run the Consumer MessageHandler in a Task #250
Conversation
Signed-off-by: Gabriele Santomaggio <G.santomaggio@gmail.com>
Codecov ReportPatch coverage:
Additional details and impacted files@@ Coverage Diff @@
## main #250 +/- ##
==========================================
- Coverage 93.00% 92.86% -0.15%
==========================================
Files 102 102
Lines 8725 8871 +146
Branches 673 704 +31
==========================================
+ Hits 8115 8238 +123
- Misses 471 489 +18
- Partials 139 144 +5
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. ☔ View full report in Codecov by Sentry. |
Signed-off-by: Gabriele Santomaggio <G.santomaggio@gmail.com>
Signed-off-by: Gabriele Santomaggio <G.santomaggio@gmail.com>
Signed-off-by: Gabriele Santomaggio <G.santomaggio@gmail.com>
Signed-off-by: Gabriele Santomaggio <G.santomaggio@gmail.com>
Signed-off-by: Gabriele Santomaggio <G.santomaggio@gmail.com>
9fc56aa
to
f5613f8
Compare
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've reviewed once but want to re-read again!
Thank you, @lukebakken. I convert the pr into a draft. I am working with @jonnepmyra to validate it; it has yet to be ready. |
when the consumer is not promoted anymore Signed-off-by: Gabriele Santomaggio <G.santomaggio@gmail.com>
…tream-dotnet-client into task_message_handler
Been testing this in many different scenarios the last week, and the current state of this PR is a huge improvement that solves multiple problems that've experienced when using SuperStreams. Some examples of problems that's been solved:
We're still struggling with cases of "all consumers are stuck in waiting status", but this happends alot less frequently with this PR, and seems to correlate with heavy load in RabbitMQ (or possibly the host of the application instance) and more investigation is needed (Will continue a separate discussion with @Gsantomaggio about this, since it seems to be out of context of this PR and very hard to reproduce). |
request is called. Signed-off-by: Gabriele Santomaggio <G.santomaggio@gmail.com>
…tream-dotnet-client into task_message_handler
request is called. Handle the cancellation on the connection level Signed-off-by: Gabriele Santomaggio <G.santomaggio@gmail.com>
Thanks to @Zerpet for help and to @jonnepmyra for rasing the issue and testing the pr
Fixes #246
Run the Consumer MessageHandler in a Task
The chunks are now processed in a separate Task
In this way, the socket thread is free to handle other requests like
ConsumerUpdate
Convert
DispatchMessage
method fromvoid
toasync Task
DispatchMessage
is now anasync task
by removing thewait
the code is aync