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
Implements [B]Z[REV]POP and the respective unit tests #4879
Conversation
An implementation of the [Ze POP Redis Module](https://github.com/itamarhaber/zpop) as core Redis commands. Fixes redis#1861.
Oh, also kind of touches #2801 (last point in the issue). |
Continuing the thoughts about possible additions to the API, it could be neat to have:
Thoughts? Feedback? Comments? |
Thanks @itamarhaber, @artix75 and I are reviewing this together right now, looks promising, we are going to fix a few things probably but I think the PR will made it into the core. News soon. |
Great! Looking fwd to your review :-)
…On Fri, May 4, 2018, 18:23 Salvatore Sanfilippo ***@***.***> wrote:
Thanks @itamarhaber <https://github.com/itamarhaber>, @artix75
<https://github.com/artix75> and I are reviewing this together right now,
looks promising, we are going to fix a few things probably but I think the
PR will made it into the core. News soon.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#4879 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AFx1_OZHUis1edPGYp5P8jxeEnaaxutrks5tvHKIgaJpZM4Tr_9E>
.
|
An additional thought: given streams' |
Hello @itamarhaber, I merged the code inside my branch
That's all basically. Of course I modified the tests as well, but I've a few things I would like to see in tests or at least in "smoke testing" by hand to ensure everything is correct.
So cool work. Before merging, would you like to review the code and comment on my changes? Cheers |
Hello @antirez - I'm happy to get the news.
TY, but FYI it was mostly an adaptation of the work you previously did on blocking list operations, so you should get some of the credit as well ;) WRT to modifications:
WRT tests:
Yep - #4920
Will do a visual and give a shot at an integration test (again, any guidance will be appreciated). If I missed anything else - just lmk.
Granted, now that the API is finalized I'll make the relevant PR. As for streams and other docs, lmk if you need help. UPDATED: PR at redis/redis-doc#922. One last thing, any thoughts on Cheers, |
Fantastic news. *ZADD variants will definitely make it as complete as it can possibly get. |
Thanks @itamarhaber,
Code is the simple part, the point is to understand when to add a feautre! :-) After the refactoring of blocking operations needed to support Streams blocking stuff, to add BZPOP was much simpler, also after years we know that there are surely compelling reasons and patterns to have all this. However I'm not for the BZPOPZADD part, because instead experience with lists shown that this is not a good idea in general, unfortunately, and that that adding safety of message processing may be used other means. The worst thing abut BZPOPZADD and BRPOPLPUSH and so forth are the cascading effects, they create a lot of problems in replication for instance, and our BRPOPLPUSH replication is still not correct in certain ways (we can talk about it if you want).
Oh right! Perfect so we are covered about that.
Ok if we don't have for lists, for now I'll be happy enough to at least manual test all the code paths to see that the behavior is correct. I'll do it right now after writing this message and I'll report back.
Thank you! More news about the propagation manual test soon. |
@itamarhaber quick update, the replication of blocking ZPOP was indeed not working. I fixed it but I'm doing more tests and I want to write an unit test at this point, doing a few random operations, checking at every step that the replicas are ok. |
Thanks for the update - more tests are usually a good idea 👍 |
Definitely... tests pushed, they are able to find the old replication bug, so apparently useful. Now everything is merged into unstable. |
So v5? Backport to 2.x? :-) woot. |
Sure v5!
Il mar 15 mag 2018, 17:54 Itamar Haber <notifications@github.com> ha
scritto:
… So v5? Backport to 2.x? :-) woot.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
<#4879 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AAEAYJs7nhTBKFPTaLy-9fdi-jScn6_Qks5tyvo5gaJpZM4Tr_9E>
.
|
An implementation of the
Ze POP Redis Module as core
Redis commands.
Resolves #1861.
@antirez per our RedisConf discussion. Does it make sense IYO to put
effort into designing the zset equivalent of
BRPOPLPUSH
?