-
-
Notifications
You must be signed in to change notification settings - Fork 4.8k
Preserve order of return values from groups #4858
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
026c813
to
a1a3abc
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.
unit tests are failing, so need change in tests?
9cf9c72
to
4db6d6b
Compare
The unit tests are passing now, but the integration tests are still failing. |
4db6d6b
to
5d231ed
Compare
Codecov Report
@@ Coverage Diff @@
## master #4858 +/- ##
=========================================
Coverage ? 82.91%
=========================================
Files ? 142
Lines ? 16175
Branches ? 2022
=========================================
Hits ? 13412
Misses ? 2565
Partials ? 198
Continue to review full report at Codecov.
|
@lpsinger this is nice, but a rather extensive change. It also seems backwards incompatible, since the Redis structure is changed from List to Sorted Set, so it needs some more thought. I will have a look in the next few days, thanks. |
e0d8a1a
to
511c7f1
Compare
d9b78cd
to
605adfa
Compare
605adfa
to
32ed0da
Compare
We've been relying on this patch for several months in our project. Any update on reviewing it? Thanks! |
This is a temporary workaround for celery/celery#4858.
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.
@lpsinger really nice work!
@lpsinger that is because the latest version is still installed. I was thinking to request the exact version (and I assume 3.7.1 will probably be compatible with Celery's codebase):
|
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.
can you resume the effort? rebase needed
@auvipy - I've rebased this changeset onto the latest master and it still seems to function happily, resolving a problem I was having with group result ordering on top of Redis today. Is there still appetite to get this merged? If @lpsinger (/ping) isn't able, I can push an alternate PR and prep for merge. |
please take this |
@maybe-sybr, I'm very happy for you to carry this forward. Thank you! |
I've created #6218 to absorb the changes proposed here. The questions around changes to the Redis results backend typing are still relevant so I'll ping the commenter there to raise it again. |
Description
Preserve the order of return values from groups under the redis backend. Fixes #3781.
Example
Here is
test.py
:Start the worker like this:
And test it like this:
In previous versions of Celery, the return values would generally be out of order. 8000 p>