-
Notifications
You must be signed in to change notification settings - Fork 2.4k
cluster: release reloading with delay. #99
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
@dim ping |
Sorry, busy recently :) I'm no a big fan of artificial delays but the only alternative solution I can think of is a background channel-select loop, where a |
How that would help? The problem here is that sequence
is not synchronized and we can't tell if we need to reload slots or there was a race between reloading and command processing. |
Sorry, I thought the problem was that:
I don't quite understand what you mean by:
|
The sequence is:
So there is a race between |
@dim ping |
I think adding a 1s delay will cause more problems than it solves. You could have a genuine slot reallocation by redis in the meantime. I don't see the 'race' being much on an issue, it will trigger another slot sync, but is this really causing much overhead? I don't believe we will ever end up in a spinning state. If you are really keen to avoid it, why don't compare you compare As said, I really don't like artificial delays, they always tend to cause not trivial issues downstream. |
449a362
to
45bb06c
Compare
45bb06c
to
40bad36
Compare
@dim done. PTAL |
@dim gentle ping. I think I addressed your comment. |
@vmihailenco really sorry, been pretty busy, LGTM now |
cluster: release reloading with delay.
/cc @dim
See comment for details.